Java List接口
List接口擴展了集合,並聲明存儲元素的序列集合的行為。
-
元素可以插入或訪問他們的列表中的位置,使用從零開始的索引。
-
列表可以包含重複的元素。
-
除了由集合中定義的方法列表定義了一些它自己的,這是總結如下下表。
-
幾個列表的方法將拋出一個UnsupportedOperationException如果集合不能被修改,當一個對象與另一個不兼容時產生ClassCastException。
SN | 方法及描述 |
---|---|
1 |
void add(int index, Object obj) Inserts obj 插入到調用列表中的索引通過索引處。達到或超出插入點任何預先存在的要素被上移。因此,不會有元素被覆蓋。 |
2 |
boolean addAll(int index, Collection c) 插入c的所有元素入索引通過索引處的調用列表。等於或超出插入點任何預先存在的要素被上移。因此,冇有任何元素被覆蓋。如果調用列表更改並返回true,否則返回false。 |
3 |
Object get(int index) 返回存儲調用集合中指定索引處的對象。 |
4 |
int indexOf(Object obj) 返回調用列表obj的第一個實例的索引。如果obj不是列表中的一個元素,則返回-1。 |
5 |
int lastIndexOf(Object obj) 返回調用列表obj的最後一個實例的索引。如果obj不是列表中的一個元素,則返回-1。 |
6 |
ListIterator listIterator( ) 返回一個迭代器調用列表的開始。 |
7 |
ListIterator listIterator(int index) 返回一個迭代器調用列表開頭的在指定索引處。 |
8 |
Object remove(int index) 從調用列表刪除index位置的元素,並返回被刪除的元素。結果列表中被壓縮。也就是說,隨後的元素的索引減一 |
9 |
Object set(int index, Object obj) 賦予obj轉換通過索引調用列表中指定的位置。 |
10 |
List subList(int start, int end) 返回一個列表,其中包括在調用列表,從開始元素end-1。在返回列表中的元素也被調用對象的引用。 |
例子:
上述界麵中各種類如ArrayList或LinkedList等已經實現。下麵是例子來說明不同類實現上述收集方法幾個方法:
import java.util.*; public class CollectionsDemo { public static void main(String[] args) { List a1 = new ArrayList(); a1.add("Zara"); a1.add("Mahnaz"); a1.add("Ayan"); System.out.println(" ArrayList Elements"); System.out.print(" " + a1); List l1 = new LinkedList(); l1.add("Zara"); l1.add("Mahnaz"); l1.add("Ayan"); System.out.println(); System.out.println(" LinkedList Elements"); System.out.print(" " + l1); } }
這將產生以下結果:
ArrayList Elements [Zara, Mahnaz, Ayan] LinkedList Elements [Zara, Mahnaz, Ayan]