Chapter 15. Lists

Lists are probably the most widely used Java collections in practice. A list is a collection which—unlike a set—can contain duplicates, and which—unlike a queue—gives the user full visibility and control over the ordering of its elements. The corresponding Collections Framework interface is List (see Figure 15-1).

In addition to the operations inherited from Collection, the List interface includes operations for the following:

Positional Access Methods that access elements based on their numerical position in the list:

void add(int index, E e)           // add element e at given index
boolean addAll(int index, Collection<? extends E> c)
                                   // add contents of c at given index
E get(int index)                   // return element with given index
E remove(int index)                // remove element with given index
E set(int index, E e)              // replace element with given index by e
List
Figure 15-1. List

Search Methods that search for a specified object in the list and return its numerical position. These methods return -1 if the object is not present:

int indexOf(Object o)             // return index of first occurrence of o
int lastIndexOf(Object o)         // return index of last occurrence of o

Range-View A method that gets a view of a range of the list:

List<E> subList(int fromIndex, int toIndex)
                                   // return a view of a portion of the list

The method subList works in a similar way to the subSet operations on SortedSet (see SortedSet and NavigableSet ...

Get Java Generics and Collections now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.