set:類似集合,無序,且不可重複
hashset:使用雜湊表進行儲存,對於新增和刪除元素比arraylist快
treeset:是乙個有序集,具有乙個傳入構造方法的建構函式
list:可重複,有序,可根據index對資料進行操作
可用for(型別 變數:list)進行遍歷
arraylist:可以看做動態陣列
linkedlist:鍊錶結構的list,可對頭、尾進行操作
map:關鍵字是唯一標識,不可重複,可按關鍵字進行操作,資料可重複
hashmap
treemap:按排序順序(公升序)儲存關鍵字/值對,允許快速檢索。
迭代器iterator:for(iterator i=list.iterator();i.hasnext();)可用於遍歷容器,i.next()可表示遍歷到的容器中的下乙個元素
listiterator:比iterator功能更強大,主要表現在:1.可以實現逆序的遍歷 hasprevious();previous();
2.有add()方法,可以向容器中新增元素
3.可以定位當前索引位置
4.對當前物件的修改set()
注意:使用previous時應注意游標的位置
comparable(物件內部)和comparator區別:
兩者都用於容器內物件的排序,可以在構建容器時作為引數傳遞,也可以使用collections.sort
或arrays.sort呼叫開始排序
comparable 是乙個物件本身就已經支援自比較所需要實現的介面,即容器裝的物件的類中實現
comparator 是乙個專用的比較器,當這個物件不支援自比較或者自比較函式不能滿足你的要求時,你可以寫乙個比較器來完成兩個物件之間大 小的比較。即使用時需要另外定義乙個類來實現介面。你想對整數採用絕對值大小來排序,integer 是不符合要求的,你不需要去修改 integer 類
(實際上你也不能這麼做)去改變它的排序行為,只要使用乙個實現了 comparator 介面的物件來實現控制它的排序就行了。
容器學習筆記
python 容器 新建 例項 docker pull ubuntu docker it name web ubuntu bin bash exit docker ps docker ps a docker run webapt get update 公升級 apt get install y ng...
其他容器學習筆記
1 vector 沒有實現序列化介面 2 無參建構函式的預設值是10 3 新增資料需要判斷是否需要擴容,擴大為原來的2倍 3 很多方法新增了synchronized同步語句塊,是執行緒安全的 4 元素允許為空 5 jdk 1.0的產物,用的比較少了 6 遍歷資料用enumeration,不能用ite...
IOC容器學習筆記
ioc inversion of control 即控制反轉技術,其基本原理是基於所謂hollywood模式思想 don t call me i ll call you 思想。也就是說,所有的元件都是被動的,所有元件初始化和呼叫都有容器負責。元件處在容器當中,有容器負責管理。舉乙個例子,公司有一台聯...