Collection Framework List Interface

The List Interface:

A list is an ordered collection is known as sequence. The List interface extends Collection and declares the behavior of a collection that stores a sequence of elements.

Elements can be inserted or accessed by their position in the list, using a zero based index. A list may contain duplicate elements. In addition to the methods defied by collection, List defines some of its own.

Methods in the List Interface:
boolean add(Object o)

Appends the specified element to the end of this list (optional operation). The method is defined in the Collection interface but as part of the List interface it should be implemented so as to always add the element at the end of the list.

void add(int index, Object element)

Inserts the specified element at the specified position in this list (optional operation). Any pre-existing elements at or beyond the point of insertion are sifted up. Thus, no elements are overwritten.

boolean addAll(Collection c)

Appends all of the element in the specified collection to the end of this list, in the order that are returned by the specified collections iterator(optional operation). The method is defined in the Collection interface but as part of the List interface it should be implemented so as to always add the element at the end of the list.

boolean addAll(int index, Collection c)

inserts all of the elements in the specified collection into this list at the specified position (optional operation). Returns true if the invoking list changes and returns false otherwise.

boolean addAll(int index, Collection c)

Inserts all of the elements in the specified collection into this list at the specitied position (optional operation). Returns true if the invoking list changes and returns false otherwise.

Object get(int index)

Returns the element at the specified position in this list.

int indexOf(Object o)

Returns the index in this list of the first occurrence of the specified element, or -1 if list does not contain the element.

int lastIndexOf(Object o)

Returns the index in this list of the last occurrence of the specified element, or -1 if list does not contain the element.

ListIterator iterator( )

Returns a list iterator of elements in this list (in proper sequence).

ListIterator iterator(int index)

Returns a list iterator of elements in this list (in proper sequence), starting at the specified position in this list.

Object remove(int index)

Removes the elements at the specified position (optional operation) and returns deleted element. The resulting list is compacted. That is, the indexes of subsequent element are decremented by one.

Object set(int index, Object element)

Replaces the element at the specified position in this list with the specified element (optional operation).

List subList(int fromIndex, int toIndex)

Returns a list that includes elements from start to end-1 in the invoking list. Elements in the returned list are also referenced by the invoking object.

ArrayList

The ArrayList class extends AbstractList and implements the List interface. The ArrayList supports dynamic arrays that can grow as needed. In java, standard array are of a fixed length.

After arrays are created, they cannot grow or shrink, which means that we must know in advance how many elements an array will hold. But, sometimes, we don’t know size of an array until run-time. To handle this situation, the collections framework defines ArrayList.

An ArrayList is a variable-length array of object references that is, an ArrayList can dynamically increase or decrease in size. Array lists are created with an initial size.

When the size is exceeded, the collection is automatically enlarged, when objects are removed, the array may shrunk. Using generics feature introduced in J2SE 5, it is possible to restrict the type of elements to be added in the ArrayList.

Note:-

The legacy class Vector also supports dynamic arrays.

The ArrayList class executes the List interface. It utilizes a powerful exhibit to store the copy component of various information types. The ArrayList class keeps up the addition request and is non-synchronized. The components put away in the ArrayList class can be arbitrarily gotten to.

Example
		import java.util.*;  
		class DemoJavaCollection1{  
		public static void main(String args[]){  
		ArrayList< String> list=new ArrayList< String>();//Creating arraylist  
		list.add("Ram");//Adding object in arraylist  
		list.add("Shyam");  
		list.add("Geeta");  
		list.add("Rani");  
		//Traversing list through Iterator  
		Iterator itr=list.iterator();  
		while(itr.hasNext()){  
		System.out.println(itr.next());  
		}  
		}  
		}  
	
Output

Ram

Shyam

Geeta

Rani

Copyright 1999- Ducat Creative, All rights reserved.