導航
1.Set集合
2.HashSet類
3.TreeSet類
————————————————————————————————————————
1.Set集合
可以依次把多個對象放進Set集合中,這個集合不能記住元素的添加順序,不包含重複數,最多隻包含一個null
————————————————————————————————————————
2.HashSet類
使用的是Hash算法,有很好的存取與查找性能
特點:
1.順序可能發生變化,不與添加順序同步
2.不是同步的,如果多個線程同時訪問或修改一個Hashset,通過代碼保證其同步
3.集合可以使null
用hashcode()hashcode 值,根據值來決定它的位置
若兩個equals相等,hascode不相等,會存儲不同位置
若兩項都相等,兩個元素相同
1.創建實例
HashSet hs=new Hashset()
HashSet< String> hss=new HashSet< String>();
2.添加
add()
3.使用迭代器進行遍歷
Iterator< String>it=hs.iterator(); //需要使用iterator()來得到初始位置,並且應當是相同類型的
it.hasnext() //檢查序列中是否還有元素
it.next() //返回下一個元素
while(it.hasnext())
{
System.out.println(it.next()); //進行遍歷
}
————————————————————————————————————————
3.TreeSet類
實現set接口和sortedset接口,並且它是自然排序的
其中sortedset是set的子接口
只對Comparable接口排序
1.創建實例
Treeset< Double> scores=new Treeset< Double>();
2.返回第一個,最後一個
first();
last();
3.移除第一個或者最後一個
poolfirst()
poollast()
遍歷和上面相同
4.是否存在
contains()
5.返回一個集合
subset() //範圍之間
headset() //輸入的值之前
tailset() //輸入的值之後
如:SortedSet< Double> score2=score.tailset(90) //就是返回在90之後的
6.查詢其中的值,通過索引
score2.toArray //獲取數組
score2.toArray[i] //進行索引
7.求其中長度
score2.toArray().length