SlideShare a Scribd company logo
8/30/2016 The List Interface (The Java™ Tutorials > Collections > Interfaces)
https://docs.oracle.com/javase/tutorial/collections/interfaces/list.html 1/6
Trail: Collections 
Lesson: Interfaces
The List Interface
A List is an ordered Collection (sometimes called a sequence). Lists may contain duplicate elements. In addition to the operations inherited
from Collection, the List interface includes operations for the following:
Positional access — manipulates elements based on their numerical position in the list. This includes methods such as get, set, add,
addAll, and remove.
Search — searches for a specified object in the list and returns its numerical position. Search methods include indexOf and lastIndexOf.
Iteration — extends Iterator semantics to take advantage of the list's sequential nature. The listIterator methods provide this
behavior.
Range­view — The sublist method performs arbitrary range operations on the list.
The Java platform contains two general­purpose List implementations. ArrayList, which is usually the better­performing implementation, and
LinkedList which offers better performance under certain circumstances.
Collection Operations
The operations inherited from Collection all do about what you'd expect them to do, assuming you're already familiar with them. If you're not
familiar with them from Collection, now would be a good time to read The Collection Interface section. The remove operation always removes
the first occurrence of the specified element from the list. The add and addAll operations always append the new element(s) to the end of the list.
Thus, the following idiom concatenates one list to another.
list1.addAll(list2);
Here's a nondestructive form of this idiom, which produces a third List consisting of the second list appended to the first.
List<Type> list3 = new ArrayList<Type>(list1);
list3.addAll(list2);
Note that the idiom, in its nondestructive form, takes advantage of ArrayList's standard conversion constructor.
And here's an example (JDK 8 and later) that aggregates some names into a List:
List<String> list = people.stream()
.map(Person::getName)
.collect(Collectors.toList());
Like the Set interface, List strengthens the requirements on the equals and hashCode methods so that two List objects can be compared for
logical equality without regard to their implementation classes. Two List objects are equal if they contain the same elements in the same order.
Positional Access and Search Operations
The basic positional access operations are get, set, add and remove. (The set and remove operations return the old value that is being
overwritten or removed.) Other operations (indexOf and lastIndexOf) return the first or last index of the specified element in the list.
The addAll operation inserts all the elements of the specified Collection starting at the specified position. The elements are inserted in the order
they are returned by the specified Collection's iterator. This call is the positional access analog of Collection's addAll operation.
Here's a little method to swap two indexed values in a List.
public static <E> void swap(List<E> a, int i, int j) {
    E tmp = a.get(i);
    a.set(i, a.get(j));
Documentation
The Java™ Tutorials
8/30/2016 The List Interface (The Java™ Tutorials > Collections > Interfaces)
https://docs.oracle.com/javase/tutorial/collections/interfaces/list.html 2/6
    a.set(j, tmp);
}
Of course, there's one big difference. This is a polymorphic algorithm: It swaps two elements in any List, regardless of its implementation type.
Here's another polymorphic algorithm that uses the preceding swap method.
public static void shuffle(List<?> list, Random rnd) {
    for (int i = list.size(); i > 1; i‐‐)
        swap(list, i ‐ 1, rnd.nextInt(i));
}
This algorithm, which is included in the Java platform's Collections class, randomly permutes the specified list using the specified source of
randomness. It's a bit subtle: It runs up the list from the bottom, repeatedly swapping a randomly selected element into the current position. Unlike
most naive attempts at shuffling, it's fair (all permutations occur with equal likelihood, assuming an unbiased source of randomness) and fast (requiring
exactly list.size()­1 swaps). The following program uses this algorithm to print the words in its argument list in random order.
import java.util.*;
public class Shuffle {
    public static void main(String[] args) {
        List<String> list = new ArrayList<String>();
        for (String a : args)
            list.add(a);
        Collections.shuffle(list, new Random());
        System.out.println(list);
    }
}
In fact, this program can be made even shorter and faster. The Arrays class has a static factory method called asList, which allows an array to be
viewed as a List. This method does not copy the array. Changes in the List write through to the array and vice versa. The resulting List is not a
general­purpose List implementation, because it doesn't implement the (optional) add and remove operations: Arrays are not resizable. Taking
advantage of Arrays.asList and calling the library version of shuffle, which uses a default source of randomness, you get the following tiny
program whose behavior is identical to the previous program.
import java.util.*;
public class Shuffle {
    public static void main(String[] args) {
        List<String> list = Arrays.asList(args);
        Collections.shuffle(list);
        System.out.println(list);
    }
}
Iterators
As you'd expect, the Iterator returned by List's iterator operation returns the elements of the list in proper sequence. List also provides a
richer iterator, called a ListIterator, which allows you to traverse the list in either direction, modify the list during iteration, and obtain the current
position of the iterator.
The three methods that ListIterator inherits from Iterator (hasNext, next, and remove) do exactly the same thing in both interfaces. The
hasPrevious and the previous operations are exact analogues of hasNext and next. The former operations refer to the element before the
(implicit) cursor, whereas the latter refer to the element after the cursor. The previous operation moves the cursor backward, whereas next moves
it forward.
Here's the standard idiom for iterating backward through a list.
for (ListIterator<Type> it = list.listIterator(list.size()); it.hasPrevious(); ) {
    Type t = it.previous();
    ...
}
Note the argument to listIterator in the preceding idiom. The List interface has two forms of the listIterator method. The form with no
arguments returns a ListIterator positioned at the beginning of the list; the form with an int argument returns a ListIterator positioned at
the specified index. The index refers to the element that would be returned by an initial call to next. An initial call to previous would return the
element whose index was index­1. In a list of length n, there are n+1 valid values for index, from 0 to n, inclusive.
8/30/2016 The List Interface (The Java™ Tutorials > Collections > Interfaces)
https://docs.oracle.com/javase/tutorial/collections/interfaces/list.html 3/6
Intuitively speaking, the cursor is always between two elements — the one that would be returned by a call to previous and the one that would be
returned by a call to next. The n+1 valid index values correspond to the n+1 gaps between elements, from the gap before the first element to the
gap after the last one. The following figure shows the five possible cursor positions in a list containing four elements.
The five possible cursor positions.
Calls to next and previous can be intermixed, but you have to be a bit careful. The first call to previous returns the same element as the last
call to next. Similarly, the first call to next after a sequence of calls to previous returns the same element as the last call to previous.
It should come as no surprise that the nextIndex method returns the index of the element that would be returned by a subsequent call to next,
and previousIndex returns the index of the element that would be returned by a subsequent call to previous. These calls are typically used
either to report the position where something was found or to record the position of the ListIterator so that another ListIterator with
identical position can be created.
It should also come as no surprise that the number returned by nextIndex is always one greater than the number returned by previousIndex.
This implies the behavior of the two boundary cases: (1) a call to previousIndex when the cursor is before the initial element returns ­1 and (2) a
call to nextIndex when the cursor is after the final element returns list.size(). To make all this concrete, the following is a possible
implementation of List.indexOf.
public int indexOf(E e) {
    for (ListIterator<E> it = listIterator(); it.hasNext(); )
        if (e == null ? it.next() == null : e.equals(it.next()))
            return it.previousIndex();
    // Element not found
    return ‐1;
}
Note that the indexOf method returns it.previousIndex() even though it is traversing the list in the forward direction. The reason is that
it.nextIndex() would return the index of the element we are about to examine, and we want to return the index of the element we just
examined.
The Iterator interface provides the remove operation to remove the last element returned by next from the Collection. For ListIterator,
this operation removes the last element returned by next or previous. The ListIterator interface provides two additional operations to modify
the list — set and add. The set method overwrites the last element returned by next or previous with the specified element. The following
polymorphic algorithm uses set to replace all occurrences of one specified value with another.
public static <E> void replace(List<E> list, E val, E newVal) {
    for (ListIterator<E> it = list.listIterator(); it.hasNext(); )
        if (val == null ? it.next() == null : val.equals(it.next()))
            it.set(newVal);
}
The only bit of trickiness in this example is the equality test between val and it.next. You need to special­case a val value of null to prevent a
NullPointerException.
The add method inserts a new element into the list immediately before the current cursor position. This method is illustrated in the following
polymorphic algorithm to replace all occurrences of a specified value with the sequence of values contained in the specified list.
public static <E> 
    void replace(List<E> list, E val, List<? extends E> newVals) {
    for (ListIterator<E> it = list.listIterator(); it.hasNext(); ){
        if (val == null ? it.next() == null : val.equals(it.next())) {
            it.remove();
            for (E e : newVals)
                it.add(e);
        }
    }
}
Range­View Operation
8/30/2016 The List Interface (The Java™ Tutorials > Collections > Interfaces)
https://docs.oracle.com/javase/tutorial/collections/interfaces/list.html 4/6
The range­view operation, subList(int fromIndex, int toIndex), returns a List view of the portion of this list whose indices range
from fromIndex, inclusive, to toIndex, exclusive. This half­open range mirrors the typical for loop.
for (int i = fromIndex; i < toIndex; i++) {
    ...
}
As the term view implies, the returned List is backed up by the List on which subList was called, so changes in the former are reflected in the
latter.
This method eliminates the need for explicit range operations (of the sort that commonly exist for arrays). Any operation that expects a List can be
used as a range operation by passing a subList view instead of a whole List. For example, the following idiom removes a range of elements from
a List.
list.subList(fromIndex, toIndex).clear();
Similar idioms can be constructed to search for an element in a range.
int i = list.subList(fromIndex, toIndex).indexOf(o);
int j = list.subList(fromIndex, toIndex).lastIndexOf(o);
Note that the preceding idioms return the index of the found element in the subList, not the index in the backing List.
Any polymorphic algorithm that operates on a List, such as the replace and shuffle examples, works with the List returned by subList.
Here's a polymorphic algorithm whose implementation uses subList to deal a hand from a deck. That is, it returns a new List (the "hand")
containing the specified number of elements taken from the end of the specified List (the "deck"). The elements returned in the hand are removed
from the deck.
public static <E> List<E> dealHand(List<E> deck, int n) {
    int deckSize = deck.size();
    List<E> handView = deck.subList(deckSize ‐ n, deckSize);
    List<E> hand = new ArrayList<E>(handView);
    handView.clear();
    return hand;
}
Note that this algorithm removes the hand from the end of the deck. For many common List implementations, such as ArrayList, the
performance of removing elements from the end of the list is substantially better than that of removing elements from the beginning.
The following is a program that uses the dealHand method in combination with Collections.shuffle to generate hands from a normal 52­
card deck. The program takes two command­line arguments: (1) the number of hands to deal and (2) the number of cards in each hand.
import java.util.*;
public class Deal {
    public static void main(String[] args) {
        if (args.length < 2) {
            System.out.println("Usage: Deal hands cards");
            return;
        }
        int numHands = Integer.parseInt(args[0]);
        int cardsPerHand = Integer.parseInt(args[1]);
    
        // Make a normal 52‐card deck.
        String[] suit = new String[] {
            "spades", "hearts", 
            "diamonds", "clubs" 
        };
        String[] rank = new String[] {
            "ace", "2", "3", "4",
            "5", "6", "7", "8", "9", "10", 
            "jack", "queen", "king" 
        };
        List<String> deck = new ArrayList<String>();
        for (int i = 0; i < suit.length; i++)
            for (int j = 0; j < rank.length; j++)
                deck.add(rank[j] + " of " + suit[i]);
8/30/2016 The List Interface (The Java™ Tutorials > Collections > Interfaces)
https://docs.oracle.com/javase/tutorial/collections/interfaces/list.html 5/6
    
        // Shuffle the deck.
        Collections.shuffle(deck);
    
        if (numHands * cardsPerHand > deck.size()) {
            System.out.println("Not enough cards.");
            return;
        }
    
        for (int i = 0; i < numHands; i++)
            System.out.println(dealHand(deck, cardsPerHand));
    }
  
    public static <E> List<E> dealHand(List<E> deck, int n) {
        int deckSize = deck.size();
        List<E> handView = deck.subList(deckSize ‐ n, deckSize);
        List<E> hand = new ArrayList<E>(handView);
        handView.clear();
        return hand;
    }
}
Running the program produces output like the following.
% java Deal 4 5
[8 of hearts, jack of spades, 3 of spades, 4 of spades,
    king of diamonds]
[4 of diamonds, ace of clubs, 6 of clubs, jack of hearts,
    queen of hearts]
[7 of spades, 5 of spades, 2 of diamonds, queen of diamonds,
    9 of clubs]
[8 of spades, 6 of diamonds, ace of spades, 3 of hearts,
    ace of hearts]
Although the subList operation is extremely powerful, some care must be exercised when using it. The semantics of the List returned by
subList become undefined if elements are added to or removed from the backing List in any way other than via the returned List. Thus, it's
highly recommended that you use the List returned by subList only as a transient object — to perform one or a sequence of range operations on
the backing List. The longer you use the subList instance, the greater the probability that you'll compromise it by modifying the backing List
directly or through another subList object. Note that it is legal to modify a sublist of a sublist and to continue using the original sublist (though not
concurrently).
List Algorithms
Most polymorphic algorithms in the Collections class apply specifically to List. Having all these algorithms at your disposal makes it very easy to
manipulate lists. Here's a summary of these algorithms, which are described in more detail in the Algorithms section.
sort — sorts a List using a merge sort algorithm, which provides a fast, stable sort. (A stable sort is one that does not reorder equal
elements.)
shuffle — randomly permutes the elements in a List.
reverse — reverses the order of the elements in a List.
rotate — rotates all the elements in a List by a specified distance.
swap — swaps the elements at specified positions in a List.
replaceAll — replaces all occurrences of one specified value with another.
fill — overwrites every element in a List with the specified value.
copy — copies the source List into the destination List.
binarySearch — searches for an element in an ordered List using the binary search algorithm.
indexOfSubList — returns the index of the first sublist of one List that is equal to another.
lastIndexOfSubList — returns the index of the last sublist of one List that is equal to another.
Your use of this page and all the material on pages under "The Java Tutorials" banner is subject to these legal
notices.
Copyright © 1995, 2015 Oracle and/or its affiliates. All rights reserved.
Problems with the examples? Try Compiling and Running the Examples:
FAQs.
Complaints? Compliments? Suggestions? Give us your feedback.
8/30/2016 The List Interface (The Java™ Tutorials > Collections > Interfaces)
https://docs.oracle.com/javase/tutorial/collections/interfaces/list.html 6/6
Previous page: The Set Interface 
Next page: The Queue Interface

More Related Content

What's hot (20)

PPT
Collection Framework in java
CPD INDIA
 
PPSX
Collections - Lists, Sets
Hitesh-Java
 
PPTX
Java collections
Amar Kutwal
 
PPTX
collection framework in java
MANOJ KUMAR
 
PDF
Java Collections Tutorials
Prof. Erwin Globio
 
PPT
JAVA Collections frame work ppt
Ranjith Alappadan
 
PPT
Java collection
Arati Gadgil
 
PPT
Java collection
Deepak Kumar
 
PDF
Java Collections Framework
guestd8c458
 
PPT
Java Collections Framework
Sony India Software Center
 
PPTX
Collections lecture 35 40
bhawna sharma
 
PPT
Java collections concept
kumar gaurav
 
DOCX
Collections framework
Anand Buddarapu
 
PDF
Collections Api - Java
Drishti Bhalla
 
PDF
Collections Java e Google Collections
André Faria Gomes
 
PPTX
Java.util
Ramakrishna kapa
 
PDF
Collections in Java Notes
Shalabh Chaudhary
 
PDF
Java Collection framework
ankitgarg_er
 
PPTX
Java - Collections framework
Riccardo Cardin
 
PDF
5 collection framework
Minal Maniar
 
Collection Framework in java
CPD INDIA
 
Collections - Lists, Sets
Hitesh-Java
 
Java collections
Amar Kutwal
 
collection framework in java
MANOJ KUMAR
 
Java Collections Tutorials
Prof. Erwin Globio
 
JAVA Collections frame work ppt
Ranjith Alappadan
 
Java collection
Arati Gadgil
 
Java collection
Deepak Kumar
 
Java Collections Framework
guestd8c458
 
Java Collections Framework
Sony India Software Center
 
Collections lecture 35 40
bhawna sharma
 
Java collections concept
kumar gaurav
 
Collections framework
Anand Buddarapu
 
Collections Api - Java
Drishti Bhalla
 
Collections Java e Google Collections
André Faria Gomes
 
Java.util
Ramakrishna kapa
 
Collections in Java Notes
Shalabh Chaudhary
 
Java Collection framework
ankitgarg_er
 
Java - Collections framework
Riccardo Cardin
 
5 collection framework
Minal Maniar
 

Viewers also liked (12)

PDF
Noticia Seniat
Betsy Romero
 
PDF
2016 Publications for the Professionals, CoSec, Practitioners, Company Direct...
Jayne Hunter-Rhys
 
DOCX
CV M. AMIR MJUGHAL
Muhammad amir mughal
 
PPT
E&B DATA Investment Seminar 2009 Alberta
Isabelle Poirier
 
PPTX
Galleon Investments, LLC
Joshua (Shlomo) Katz
 
PPTX
Presentation_NEW.PPTX
jameschloejames
 
PPTX
Participacion ciudadana
alejof2
 
PPTX
La politica y educación
Claudia Robles
 
PPT
Szemrany Marketing Szeptany - uproszczona wersja
thekoza
 
PPTX
презентация
Al La
 
PPTX
2º Int E. Mendoza y La verdad sobre el caso Savolta
jcgarlop
 
PDF
Bamboo: the important green material for construction in the 21st century
International Bamboo and Rattan Organisation
 
Noticia Seniat
Betsy Romero
 
2016 Publications for the Professionals, CoSec, Practitioners, Company Direct...
Jayne Hunter-Rhys
 
CV M. AMIR MJUGHAL
Muhammad amir mughal
 
E&B DATA Investment Seminar 2009 Alberta
Isabelle Poirier
 
Galleon Investments, LLC
Joshua (Shlomo) Katz
 
Presentation_NEW.PPTX
jameschloejames
 
Participacion ciudadana
alejof2
 
La politica y educación
Claudia Robles
 
Szemrany Marketing Szeptany - uproszczona wersja
thekoza
 
презентация
Al La
 
2º Int E. Mendoza y La verdad sobre el caso Savolta
jcgarlop
 
Bamboo: the important green material for construction in the 21st century
International Bamboo and Rattan Organisation
 
Ad

Similar to The list interface (the java™ tutorials collections interfaces) (20)

PPTX
22CS305-UNIT-1.pptx ADVANCE JAVA PROGRAMMING
logesswarisrinivasan
 
PPTX
Advanced Java - UNIT 3.pptx
eyemitra1
 
PDF
java unit 4 pdf - about java collections
aapalaks
 
PDF
Java collections
padmad2291
 
PPTX
Presentation.pptx on java oops concepts jcf
SoumyaSou4
 
PPTX
collection framework.pptx
SoniaKapoor56
 
PDF
Array list (java platform se 8 )
charan kumar
 
PPT
11000121065_NAITIK CHATTERJEE.ppt
NaitikChatterjee
 
PPTX
Java collections
anshkhurana7
 
PPTX
Collections - Lists & sets
RatnaJava
 
PPTX
oop lecture framework,list,maps,collection
ssuseredfbe9
 
PPTX
Java Unit 2 (Part 2)
Dr. SURBHI SAROHA
 
PPT
Collection framework
DilvarSingh2
 
PPTX
Collection framework
BindhuBhargaviTalasi
 
PPTX
collectionsframework210616084411 (1).pptx
ArunPatrick2
 
PDF
Lecture 24
Debasish Pratihari
 
PPTX
Java Collections Framework - Interfaces, Classes and Algorithms
RajalakshmiS74
 
PPT
Java Collection fundamentals and Uses Unit
vinipant
 
22CS305-UNIT-1.pptx ADVANCE JAVA PROGRAMMING
logesswarisrinivasan
 
Advanced Java - UNIT 3.pptx
eyemitra1
 
java unit 4 pdf - about java collections
aapalaks
 
Java collections
padmad2291
 
Presentation.pptx on java oops concepts jcf
SoumyaSou4
 
collection framework.pptx
SoniaKapoor56
 
Array list (java platform se 8 )
charan kumar
 
11000121065_NAITIK CHATTERJEE.ppt
NaitikChatterjee
 
Java collections
anshkhurana7
 
Collections - Lists & sets
RatnaJava
 
oop lecture framework,list,maps,collection
ssuseredfbe9
 
Java Unit 2 (Part 2)
Dr. SURBHI SAROHA
 
Collection framework
DilvarSingh2
 
Collection framework
BindhuBhargaviTalasi
 
collectionsframework210616084411 (1).pptx
ArunPatrick2
 
Lecture 24
Debasish Pratihari
 
Java Collections Framework - Interfaces, Classes and Algorithms
RajalakshmiS74
 
Java Collection fundamentals and Uses Unit
vinipant
 
Ad

More from charan kumar (10)

PDF
Volatile keyword
charan kumar
 
PDF
Tree map (java platform se 8 )
charan kumar
 
PDF
The set interface (the java™ tutorials collections interfaces)
charan kumar
 
PDF
The map interface (the java™ tutorials collections interfaces)
charan kumar
 
PDF
Linked list (java platform se 8 )
charan kumar
 
PDF
Linked hashmap (java platform se 8 )
charan kumar
 
PDF
Hash set (java platform se 8 )
charan kumar
 
PDF
Hash map (java platform se 8 )
charan kumar
 
PDF
Collectn framework
charan kumar
 
PDF
Collectn framework copy
charan kumar
 
Volatile keyword
charan kumar
 
Tree map (java platform se 8 )
charan kumar
 
The set interface (the java™ tutorials collections interfaces)
charan kumar
 
The map interface (the java™ tutorials collections interfaces)
charan kumar
 
Linked list (java platform se 8 )
charan kumar
 
Linked hashmap (java platform se 8 )
charan kumar
 
Hash set (java platform se 8 )
charan kumar
 
Hash map (java platform se 8 )
charan kumar
 
Collectn framework
charan kumar
 
Collectn framework copy
charan kumar
 

Recently uploaded (20)

PDF
Quiz Night Live May 2025 - Intra Pragya Online General Quiz
Pragya - UEM Kolkata Quiz Club
 
PDF
Rapid Mathematics Assessment Score sheet for all Grade levels
DessaCletSantos
 
PDF
Indian National movement PPT by Simanchala Sarab, Covering The INC(Formation,...
Simanchala Sarab, BABed(ITEP Secondary stage) in History student at GNDU Amritsar
 
PDF
TechSoup Microsoft Copilot Nonprofit Use Cases and Live Demo - 2025.06.25.pdf
TechSoup
 
PPTX
How to Configure Taxes in Company Currency in Odoo 18 Accounting
Celine George
 
PPTX
Aerobic and Anaerobic respiration and CPR.pptx
Olivier Rochester
 
PPTX
Urban Hierarchy and Service Provisions.pptx
Islamic University of Bangladesh
 
PPTX
PLANNING FOR EMERGENCY AND DISASTER MANAGEMENT ppt.pptx
PRADEEP ABOTHU
 
PDF
DIGESTION OF CARBOHYDRATES ,PROTEINS AND LIPIDS
raviralanaresh2
 
PPTX
How to Setup Automatic Reordering Rule in Odoo 18 Inventory
Celine George
 
PDF
Nanotechnology and Functional Foods Effective Delivery of Bioactive Ingredien...
rmswlwcxai8321
 
PDF
CAD25 Gbadago and Fafa Presentation Revised-Aston Business School, UK.pdf
Kweku Zurek
 
PDF
Lesson 1 : Science and the Art of Geography Ecosystem
marvinnbustamante1
 
PPTX
ESP 10 Edukasyon sa Pagpapakatao PowerPoint Lessons Quarter 1.pptx
Sir J.
 
PDF
Supply Chain Security A Comprehensive Approach 1st Edition Arthur G. Arway
rxgnika452
 
PDF
Public Health For The 21st Century 1st Edition Judy Orme Jane Powell
trjnesjnqg7801
 
PDF
Cooperative wireless communications 1st Edition Yan Zhang
jsphyftmkb123
 
PPTX
The Gift of the Magi by O Henry-A Story of True Love, Sacrifice, and Selfless...
Beena E S
 
PPTX
How to Configure Refusal of Applicants in Odoo 18 Recruitment
Celine George
 
PPTX
PLANNING A HOSPITAL AND NURSING UNIT.pptx
PRADEEP ABOTHU
 
Quiz Night Live May 2025 - Intra Pragya Online General Quiz
Pragya - UEM Kolkata Quiz Club
 
Rapid Mathematics Assessment Score sheet for all Grade levels
DessaCletSantos
 
Indian National movement PPT by Simanchala Sarab, Covering The INC(Formation,...
Simanchala Sarab, BABed(ITEP Secondary stage) in History student at GNDU Amritsar
 
TechSoup Microsoft Copilot Nonprofit Use Cases and Live Demo - 2025.06.25.pdf
TechSoup
 
How to Configure Taxes in Company Currency in Odoo 18 Accounting
Celine George
 
Aerobic and Anaerobic respiration and CPR.pptx
Olivier Rochester
 
Urban Hierarchy and Service Provisions.pptx
Islamic University of Bangladesh
 
PLANNING FOR EMERGENCY AND DISASTER MANAGEMENT ppt.pptx
PRADEEP ABOTHU
 
DIGESTION OF CARBOHYDRATES ,PROTEINS AND LIPIDS
raviralanaresh2
 
How to Setup Automatic Reordering Rule in Odoo 18 Inventory
Celine George
 
Nanotechnology and Functional Foods Effective Delivery of Bioactive Ingredien...
rmswlwcxai8321
 
CAD25 Gbadago and Fafa Presentation Revised-Aston Business School, UK.pdf
Kweku Zurek
 
Lesson 1 : Science and the Art of Geography Ecosystem
marvinnbustamante1
 
ESP 10 Edukasyon sa Pagpapakatao PowerPoint Lessons Quarter 1.pptx
Sir J.
 
Supply Chain Security A Comprehensive Approach 1st Edition Arthur G. Arway
rxgnika452
 
Public Health For The 21st Century 1st Edition Judy Orme Jane Powell
trjnesjnqg7801
 
Cooperative wireless communications 1st Edition Yan Zhang
jsphyftmkb123
 
The Gift of the Magi by O Henry-A Story of True Love, Sacrifice, and Selfless...
Beena E S
 
How to Configure Refusal of Applicants in Odoo 18 Recruitment
Celine George
 
PLANNING A HOSPITAL AND NURSING UNIT.pptx
PRADEEP ABOTHU
 

The list interface (the java™ tutorials collections interfaces)