單列集合框架層次結構圖
List接口
我們看一下jdk1.6官方中文文檔對於List接口的介紹:
List接口的特點
java.util.List
接口繼承自 Collection 接口,是單列集合的一個重要分支,習慣性地會將實現了 List 接口的對 象稱爲List集合。在List集合中允許出現重複的元素,所有的元素是以一種線性方式進行存儲的,在程序中可以通過 索引來訪問集合中的指定元素。另外,List集合還有一個特點就是元素有序,即元素的存入順序和取出順序一致。
- 它是一個元素存取有序的集合。例如,存元素的順序是11、22、33。那麼集合中,元素的存儲就是按照11、 22、33的順序完成的)。
- 它是一個帶有索引的集合,通過索引就可以精確的操作集合中的元素(與數組的索引是一個道理)。
- 集合中可以有重複的元素,通過元素的equals方法,來比較是否爲重複的元素。
常用的方法
實現的功能:插入元素到指定索引處、獲取指定索引處的元素、刪除指定索引處的元素、替換指定索引處的元素。未列舉出的繼承自Collection的方法請移步:Java基礎|Collection接口
方法使用示例
定義一個List集合
由於List是一個接口,我們使用它需要創建實現類對象。就選擇 ArrayList 吧。泛型的實際類型參數就選用String。
List<String> list = new ArrayList<>();
list.add("迪麗熱巴");
list.add("古力娜扎");
list.add("馬爾扎哈");
插入元素到指定索引處
list.add(1, "蒜頭王八");//list打印輸出:[迪麗熱巴, 蒜頭王八, 古力娜扎, 馬爾扎哈]
獲取指定索引處的元素
String name = list.get(2);//輸出:古力娜扎
刪除指定索引處的元素
String remove = list.remove(3);//從list中刪除"馬爾扎哈",同時返回被刪除的元素"馬爾扎哈"
替換指定索引處的元素
String replace = list.set(0, "新垣結衣");//將list 0索引處的元素替換爲"新垣結衣",同時返回被替換的元素"迪麗熱巴"
List集合的遍歷
-
使用迭代器。Java基礎|迭代器 單列集合的通用遍歷方式
-
因爲有索引的存在,可以使用普通fori循環。
List<String> list = new ArrayList<>();
list.add("迪麗熱巴");
list.add("古力娜扎");
list.add("馬爾扎哈");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}