集合總結 -- List

List特有的方法

  • 增: add(index,element) ; add(index , Collection); push(element)
  • 刪:remove(index)
  • 改:set(index,element)
  • 查:get(index) ; subList(fromIndex,toIndex) ; listIterator()  ; indexOf() ;

ArrayList

原理:底層使用數組結構 ; 默認長度爲10的數組,如果插入的數據超過數組長度,需要rehashing,新建數組長度爲原來的1.5倍 , 然後將原有數據放入 。

特點:查詢速度較塊,添加或刪除較慢 ; 線程不同步 ;

特有方法:

al.add("java01");

al.add(1,"java04"); //在index=1 處插入元素

al.remove(1);

al.set(1,"java07");

System.out.println(al.get(1));

al.indexOf("java03")

List sub = al.subList(0,2)

ListIterator 迭代器: 

LinkedList:

原理:底層使用的是鏈表結構;

特點:查詢較慢,添加或刪除較塊

特有方法:

* JDK1.6出現了下面的替代方法

* offerFist() , offerLast() 添加一個元素     (offer  提供)

* peekFist() , peekLast() 此方法返回此列表的第一個元素,則返回null如果此列表爲空  (peek  偷看)

* pollFirst() , pollLash() 獲取並移除第一個元素;如果不存在,返回null ; 推薦使用poolFirst()而不是removeFirst()      (poll 截掉)

vector

原理:底層是數組結構 ; 

特點:線程同步  ;和ArrayList類似 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章