Java集合框架

1.ArrayList
  容器的容量"capacity"會隨著對象的增加,自動增長 
  只需要不斷往容器里增加數(shù)據(jù),不用擔心會出現(xiàn)數(shù)組的邊界問題  
 ArrayList實現(xiàn)了接口List 
 List heros = new ArrayList();
     //常見的寫法會把引用聲明為接口List 
    //注意:是java.util.List,而不是java.awt.List
    //接口引用指向子類對象(多態(tài))

     add增加   
     contains判斷是否存在  
     get獲取指定位置的對象  
     indexOf獲取對象所處的位置                         
     remove刪除  set替換  size獲取大小 
     toArray轉換為數(shù)組   
     addAll把另一個容器所有對象都加進來     
     clear清除
2.泛型 Generic
     不指定泛型的容器可以放種類不同的元素
     指定泛型的容器只能放這一種類型的元素及其子類

List <hero>genericheros = new ArrayList<hero>();
List <hero> genericheros = new ArrayList()<>;

3.遍歷容器的三種循環(huán)
  <1>for          
  <2>iterator 迭代器   
  <3>增強for
4.LinkedList 實現(xiàn)了List和Deque(雙向鏈表),Queue接口(隊列)
  ArrayList和LinkedList區(qū)別:

  ArrayList 順序結構,查找快,刪除插入慢

  LinkedList鏈表結構,查找慢,刪除插入快
6.HashMap 儲存數(shù)據(jù)的方式是—— 鍵值對,值可以重復鍵不能重復
7.HashSet 元素無序,嚴格的說,是沒有按照元素的插入順序排列,不能重復
   Set不提供get()來獲取指定位置的元素 
   所以遍歷需要用到迭代器,或者增強型for循環(huán)                
   HashSet自身并沒有獨立的實現(xiàn),而是在里面封裝了一個Map.HashSet是作為Map的key而存在的
8.Collection與Collections
  Collection是 Set List Queue和 Deque的接口
  Collections是一個類,容器的工具類,就如同Arrays是數(shù)組的工具類
10.HashMap和Hashtable都實現(xiàn)了Map接口,都是鍵值對保存數(shù)據(jù)的方式
 HashMap可以存放 null
 Hashtable不能存放null

 HashMap不是[線程安全的類]
 Hashtable是線程安全的類
11.幾種set
HashSet: 無序

LinkedHashSet: 按照插入順序

TreeSet: 從小到大排序

12.比較器

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容