list介面繼承了collection介面,是列表這一型別的基礎介面
int size();
boolean isempty();
boolean contains(object o);
iteratoriterator();
object toarray();
t toarray(t a);
boolean add(e e);
boolean remove(object o);
boolean containsall(collection<?> c);
boolean addall(collection<? extends e> c);
boolean removeall(collection<?> c);
boolean retainall(collection<?> c);
void clear();
default spliteratorspliterator()
list翻譯過來的意思就是個列表,對於列表會有一些特殊的操作。
1. 新增,修改,刪除
//在指定位置上新增集合c的所有元素
boolean addall(int index, collection<? extends e> c);
//替換所有元素
default void replaceall(unaryoperatoroperator)
}//在指定位置上新增元素
void add(int index, e element);
//替換指定位置上的元素
e set(int index, e element);
//刪除指定位置上的元素
e remove(int index);
unaryoperator跟之前提到的consumer類似,也是個函式式程式設計的介面,不一樣的地方在於unaryoperator有返回值。
2.查詢
//獲取指定位置上的元素
e get(int index);
//返回元素的索引
int indexof(object o);
//返回元素最後出現位置的索引
int lastindexof(object o);
3.排序
default void sort(comparator<? super e> c)
}
4. 返回子串行
listsublist(int fromindex, int toindex);
5.list迭代器
listiteratorlistiterator();
//從指定位置開始的iterator
listiteratorlistiterator(int index);
很明顯listiterator是list特有的迭代器,接下來就分析listiterator吧。
JDK原始碼解讀 Collection(介面)
collection介面是對儲存資料的容器的抽象,裡面定義的方法其實就是容器應該具有的功能。boolean add e e boolean addall collection c boolean remove object o boolean removeall collection c void ...
JDK原始碼解讀 Iterator(介面)
1.hasnext 判斷是否還有元素 boolean hasnext 2.next 返回下乙個元素 e next 3.remove default void remove 一般集合都提供了remove方法,為什麼迭代器介面還要提供乙個介面呢?其實如果在iterator迭代操作的時候,collecti...
JDK原始碼閱讀 集合框架 List介面
list介面是collection介面最重要的兒子之一,也是我們常用的arrrylist類的超級老父親的老父親的老父親的。老父親。先看他的定義 public inte ce listextends collectionlist介面有以下特點,也就是說他的實現類有以下特徵,大家使用的時候注意 list...