集合框架學習之List接口
阿新 • • 發佈:2017-07-26
分享 obj cin ble 區別 線性 list接口 dex list集合
Java語言的java.util包中提供了一些集合類,這些集合類又被稱為容器。用來完善數組的不足之處。集合類與數組的不同之處是,數組的長度是固定的,集合的長度是可變的;數組用來存放基本類型的數據,集合用來存放對象的引用。常用的集合有List集合、Set集合、Map集合,其中List 與Set實現了Collection接口。各接口還提供了不同的實現類。
Collection接口是層次結構中的根接口。Collection接口不能直接使用,但該接口提供了添加和刪除、管理數據的方法。List接口和Set接口都實現了Collection接口,因此這些方法對List集合和Set集合是通用的。
List稱為有序集合(也稱為序列 )。 該界面的用戶可以精確控制列表中每個元素的插入位置。 用戶可以通過整數索引(列表中的位置)訪問元素,並搜索列表中的元素。與集合不同,列表通常允許重復的元素。 更正式地,列表通常允許元素e1和e2成對使得e1.equals(e2) ,並且如果它們允許空元素,它們通常允許多個空元素。
List接口的常用方法
List接口繼承了Collection接口,因此包含Collection中的所有方法。又因為List是列表類型,所以List接口還提供了一些適合自身的常用方法。
方法 | 返回值 | 功能描述 |
add(int index, Object obj ) | void | 用來向集合中的指定索引位置添加對象,集合的索引位置從0開始,其它對象的索引位置相對向後移一位 |
add(Object obj ) | void | 將指定的元素追加到此列表的末尾 |
addAll(int index, Collection coll ) | boolean | 向集合指定索引位置添加指定的集合對象 |
remove(int index) | Object | 用來移除集合中指定索引位置的對象,並返回該對象 |
get(int index) | Object | 用於獲取指定索引位置的對象 |
indexOf(Object obj) | int | 該方法返回列表中對象第一次出現的索引位置,如果沒有則返回 -1 |
lastIndexOf(Object obj) | int | 該方法返回列表中對象最後一次出現的索引位置,如果沒有則返回 -1 |
subList(int fromIndex, int toIndex) | List | 獲取從索引fromIndex 到toIndex之間的元素對象 |
set(int index,Object obj) | Object |
用指定郵箱替換列表中指定位置的元素,並返回指定位置的元素 |
listIterator() | ListIterator | 獲取一個包含所有對象的ListIterator列表叠代器 |
List接口中適合自身的方法都與索引有關。由於List集合以線性方式存儲對象,因此可以通過對象的索引來操作對象。
在List集合的眾多方法中,add(int index, Object obj ) 方法和set(int index,Object obj) 有區別
集合框架學習之List接口