位置:首頁 > Java技術 > Java教學 > Java List接口

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]