ArrayList底層實現

2021-10-07 01:26:21 字數 2199 閱讀 2384

modifier and type

method and description

boolean

add(e e) 將指定的元素追加到此列表的末尾

void

add(int index, e element) 在此列表中的指定位置插入指定的元素。

boolean

addall(collection extends e> c) 按指定集合的iterator返回的順序將指定集合中的所有元素追加到此列表的末尾。

boolean

addall(int index, collection extends e> c) 將指定集合中的所有元素插入到此列表中,從指定的位置開始。

void

clear() 從列表中刪除所有元素。

object

clone() 返回此 arraylist例項的淺拷貝。

boolean

contains(object o) 如果此列表包含指定的元素,則返回 true 。

void

ensurecapacity(int mincapacity) 如果需要,增加此 arraylist例項的容量,以確保它可以至少儲存最小容量引數指定的元素數。

void

foreach(consumer super e> action) 對 iterable的每個元素執行給定的操作,直到所有元素都被處理或動作引發異常。

eget(int index) 返回此列表中指定位置的元素。

intindexof(object o) 返回此列表中指定元素的第一次出現的索引,如果此列表不包含元素,則返回-1。

boolean

isempty() 如果此列表不包含元素,則返回 true 。

iterator

iterator() 以正確的順序返回該列表中的元素的迭代器。

intlastindexof(object o) 返回此列表中指定元素的最後一次出現的索引,如果此列表不包含元素,則返回-1。

listiterator

listiterator() 返回列表中的列表迭代器(按適當的順序)。

listiterator

listiterator(int index) 從列表中的指定位置開始,返回列表中的元素(按正確順序)的列表迭代器。

eremove(int index) 刪除該列表中指定位置的元素。

boolean

remove(object o) 從列表中刪除指定元素的第乙個出現(如果存在)。

boolean

removeall(collection> c) 從此列表中刪除指定集合中包含的所有元素。

boolean

removeif(predicate super e> filter) 刪除滿足給定謂詞的此集合的所有元素。

protected void

removerange(int fromindex, int toindex) 從這個列表中刪除所有索引在 fromindex (含)和 toindex之間的元素。

void

replaceall(unaryoperator operator) 將該列表的每個元素替換為將該運算子應用於該元素的結果。

boolean

retainall(collection> c) 僅保留此列表中包含在指定集合中的元素。

eset(int index, e element) 用指定的元素替換此列表中指定位置的元素。

intsize() 返回此列表中的元素數。

void

sort(comparator super e> c) 使用提供的 comparator對此列表進行排序以比較元素。

spliterator

spliterator() 在此列表中的元素上建立late-binding和故障快速 spliterator 。

list

sublist(int fromindex, int toindex) 返回此列表中指定的 fromindex (包括)和 toindex之間的獨佔檢視。

object

toarray() 以正確的順序(從第乙個到最後乙個元素)返回乙個包含此列表中所有元素的陣列。

toarray(t a) 以正確的順序返回乙個包含此列表中所有元素的陣列(從第乙個到最後乙個元素); 返回的陣列的執行時型別是指定陣列的執行時型別。

void

trimtosize() 修改這個 arraylist例項的容量是列表的當前大小。

ArrayList的底層實現

1 底層是object陣列,叫做 elementdata 2 預設容量10,叫做 default capacity,不是初始容量 3 如果不指定初始容量,剛new出來的list如果沒有儲存任何物件,則容量為0,但是如果指定了初始容量,剛開始size也是為0 arraylistlist new arr...

ArrayList的底層實現原理

一 對於arraylist需要掌握的七點內容 二 原始碼分析 2.1 arraylist的建立 常見的兩種方式 liststrlist new arraylist liststrlist2 new arraylist 2 arraylist源 基本屬性 物件陣列 arraylist的底層資料結構 p...

ArrayList底層原始碼實現練習

created by chengbx on 2018 5 17.自己實現乙個arraylist,幫助我們更好的理解arraylist的底層結構!一句話概括arraylist的底層 陣列的擴容與資料的拷貝!public class cbxarraylist public cbxarraylist in...