集合框架中子類特點

List  元素是有序的,元素可以重複,因爲該集合體繫有索引

1.ArrayList

底層的數據結構是數組結構。特點:查詢速度快,但是增刪相對較慢,線程不同步。

2.LinkedList

底層數據採用的是鏈表結構的。特點:增刪較快,查詢較慢。

2.Vector

底層的數據結構是數組結構。特點:線程同步,被ArrayList取代了。

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Set:元素師無序的,元素不可以重複。

1.HashSet:

底層是哈希表結構。

HashSet是如何保持數據唯一性的?

是通過元素的兩個方法hashCode()和equals()搞定的。

如果元素的hashCode相等則會判斷equals()是否返回true。

2.TreeSet:

底層結構是二叉樹。

可以對set元素集合進行排序。

保證元素唯一性的依據:comparaTo方法return 0;

(1)TreeSet排序的第一種方法

讓其自身具備比較性。元素需實現comparable接口,覆蓋comparsTo方法。

comparaTo(Object obj)

{

if(!(obj instanceof Student))

throw new RuntimeException("類型不匹配");

Student stu=(Student)obj;

int num=this.nam.compareTo(stu.name);

return num

}

(2)定義自己的比較器傳爲參數傳入建立TreeSet的初始化中,

實現comparaTo接口  覆蓋compare(String s1,String s2)方法。


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