集合:
特點:可變長度
collection介面:
1、子介面(list)
特點:有序、可重複
實現類:arraylist
1、新增:add(object obj)
add(int i,object obj)
addall(collection c)
addall(int i,collection c)
2、修改:set(int i,object newobj)
3、刪除:remove(int i)
remove(object obj)
removeall(collection c)
retainall(collectoin c)僅在列表中保留指定collection中所包含的元素
clear()
4、查詢:get(int i)根據下標查詢元素,返回元素
contains(object obj)查詢列表中是否包含指定元素,包含返回true
containsall(collection c)查詢列表中是否包含指定的多個元素,全部包含返回true
indexof(object obj)查詢指定元素第一次出現的下標,返回下標索引,沒有該元素返回-1
lastindexof(object obj)查詢指定元素最後一次出現的下標,返回下標索引,沒有該元素返回-1
isempty()判斷列表是否為空,為空返回true
5、序列遍歷:
使用for迴圈
for(int i=0;ilist.get(i);
}使用foreach迴圈
使用iterator迭代器
it.hasnext() 如果有下乙個元素,返回true
it.next() 返回下乙個元素
it.remove() 刪除迭代器返回的最後乙個元素
6、其他方法:
獲取長度:size()
sublist(int start,int end)擷取集合,從下標start(包含)到下標(不包含)end擷取
toarray()把列表轉為陣列,返回的是object
把陣列轉為list集合,array.aslist(arr);
2、子介面(set)
特點:無序、不可重複
實現類:hashset
1、新增:add(object obj)
addall(collection c)
2、修改:set中沒有修改的方法,可以間接修改,先刪除再新增
3、刪除:remove(object obj)
removeall(collection c)
retainall(collection c) 僅保留 set 中那些包含在指定 collection 中的元素
clear() 清除所有元素
4、查詢:contains(object obj)查詢set中是否包含指定元素,包括返回true
isempty() 判斷set是否為空,為空返回true
containsall(collection c) 查詢set中是否包含指定的多個元素,全部包含返回true 遍歷
使用foreach迴圈
使用iterator迭代器
it.hasnext() 如果有下乙個元素,返回true
it.next() 返回下乙個元素
it.remove() 刪除迭代器返回的最後乙個元素
java資料結構總結
arraylist是基於陣列實現的乙個集合 隨機訪問速度快,迴圈到某乙個下標時停止。插入速度較慢,迴圈到某乙個下標時插入乙個新資料,然後將後面資料的下標 1 更新速度快,迴圈到某一下標時更新當前資料 刪除速度較慢,同插入原理,需要更新刪除點後的其它資料下標。初始化預設長度為10,可以指定size大小...
java基礎 集合類及其資料結構回憶總結
arraylist是實現list介面的動態陣列。動態就是大小可變。預設大小10,當元素增加時,會檢查容量是否需要增長,容量的增長會帶來陣列元素的重新拷貝。因此如果知道業務量的話,可以事先為arraylist設定初始容量。linkedlist實現list介面,基於鍊錶實現,允許所有元素包括null。繼...
資料結構 集合
陣列 陣列長度在初始化的時候就已經固定,不適合物件數量未知的情況。下圖為collection 於的部落格 下圖為map 於網路 1.介紹一下list比較常用的集合 有序,值允許重複 1 arraylist 底層實現 private static final object defaultcapacit...