java——Collection框架,Collections

java中的Collection框架表示的是集合,須要管理多個對象時能夠使用Collection中的類,框架分爲3層java

1. 接口  2. 抽象類  3. 實際使用中的類數組

java集合有6大接口安全

1. 最基本的是Collection接口數據結構

2. 而後是Set,List,SortedSet接口,繼承於Collection接口框架

3. 兩外的Map和SortedMap接口,其實準確而言是映射,而不是集合工具

 

Collections是集合類的一個工具類,或者說是幫助類,不能實例化,封裝了一系列的static方法,能夠直接拿來調用,還能夠控制線程安全等操做。spa

 

List:鏈表,元素是有序排列的線程

Collection(接口)——List(接口,能夠直接拿來使用)——Vector——Stack(棧,經常使用的數據結構)對象

Collection(接口)——List(接口,能夠直接拿來使用)——ArrayList(其實就是一個動態的數組,能夠方便查找)排序

Collection(接口)——List(接口,能夠直接拿來使用)——LinkedList(是一個雙向的鏈表)

Stack<Integer> st = new Stack<Integer>();      

st.push(int);    

st.pop(); //返回棧頂並刪除元素

st.peak(); //返回棧頂元素,可是不刪除

st.isEmpty(); //判斷棧是否爲空

 

ArrayList<Integer> list = new ArrayList<Integer>();

list.add(int);

list.get(index); //返回某個index對應的值

list.size();  //返回鏈表的長度

 

Queue<Integer> q = new LinkedList<Integer>();         //java中queue是一個接口,所以須要其餘實現接口的類來代替

q.offer(int);   //近隊列

q.poll();      //出隊列

q.peek();   //隊列頭部數據

q.isEmpty();  //判斷隊列是否爲空

 

Set:集合中的元素不容許重複,方法與Collection徹底相同,接口基本一致

Collection(接口)——Set(接口)——HashSet(類)

Collection(接口)——Set(接口)——HashSet(類)——LinkedHashSet(類)

Collection(接口)——Set(接口)——SortedSet(接口)——TreeSet(排序類)

Set的實現其實基礎是Map(HashMap),元素不能重複,重複的話會自動覆蓋前面的對象

 

Map:每一個元素包含兩個部分,鍵(Key)和值(Value),同一個Map中不容許使用相同的鍵,但能夠只用相同的值

Map(接口)——HashMap(最經常使用,key值不容許重複,不然會被覆蓋。非synchronized的,隨着時間推移,元素次序可能會變,容許null鍵和null值)

Map(接口)——HashTable(比較過期,同步的)

Map(接口)——WeakHashMap

HashMap hm = new HashMap();

hm.containsKey(key);

hm.put(key,value);

相關文章
相關標籤/搜索