創(chuàng)新互聯建站網站建設提供從項目策劃、軟件開發(fā),軟件安全維護、網站優(yōu)化(SEO)、網站分析、效果評估等整套的建站服務,主營業(yè)務為網站制作、成都網站建設,成都app軟件開發(fā)公司以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。創(chuàng)新互聯建站深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
java.util.Set
接口和java.util.List
接口一樣,同樣繼承Collection接口,它與Collection接口中的方法基本一致,并沒有對Collection接口進行功能上的擴充,只是比Collection接口更加嚴格,與List接口不同的是,Set接口中元素無序,并且都會以某種規(guī)則保證存入的元素不出現重復。
Set集合有多個子類,比如:
java.util.HashSet
、java.util.LinkedHashSet
Set特性:
java.util.HashSet
是Set接口的一個實現類,它所存儲的元素是不可重復的,并且元素都是無序的(存取順序不一致),java.util.HashSet
底層的實現其實是一個java.util.HashMap
支持。
1、HashSet集合特點HashSet是根據對象的
哈希值
來確定元素在集合中的存儲位置,因此具有良好的存取和查找性能,保證元素唯一性的方式依賴于:hashCode
和equals
方法
HashSet集合存儲數據
package cn.com.example11;
import java.util.HashSet;
public class HashSetClass {public static void main(String[] args) {HashSethashSet = new HashSet<>();
hashSet.add("admin");
hashSet.add("user");
hashSet.add("guest");
hashSet.add("root");
System.out.println(hashSet);
}
}
3、哈希值
3.1、哈希值概述3.2、如何獲取哈希值哈希值:是JDK根據對象的地址或者字符串或者數字計算出來的int類型的數據
3.3、哈希值的特點Object 類中的public int hashCode():返回對象的哈希碼值
a、JDK1.8以前
底層數據結構:數組 + 鏈表
新元素在老元素上面
b、JDK1.8以后
節(jié)點個數小于等于8個:
數組 + 鏈表
節(jié)點個數大于8個:
4、HashSet常用方法數組 + 紅黑樹
5、HashSet遍歷方式和Collection一致
三、TreeSet 1、TreeSet特點和Collection一致
package cn.com.example11;
import java.util.TreeSet;
public class TreeSetClass {public static void main(String[] args) {TreeSettreeSet = new TreeSet<>();
treeSet.add("admin");
treeSet.add("user");
treeSet.add("guest");
treeSet.add("root");
for (String s : treeSet) {System.out.println(s);
}
}
}
四、LinkedHashSet我們知道HashSet保證元素唯一,可是元素存放進去是沒有順序的,那么我們要保證有序,可以使用HashSet的一個子類
java.util.LinkedHashSet
,它是鏈表和哈希表組合的一個數據存儲結構。
LinkedHashSet:元素唯一、有序
LinkedHashSet特點:底層是一個哈希表(數組+鏈表/紅黑樹) + 鏈表:多出的鏈表用于記錄元素的存儲順序,保證元素有序
package cn.com.example11;
import java.util.LinkedHashSet;
public class LinkedHashSetClass {public static void main(String[] args) {LinkedHashSetlinkedHashSet = new LinkedHashSet<>();
linkedHashSet.add("admin");
linkedHashSet.add("user");
linkedHashSet.add("guest");
linkedHashSet.add("root");
linkedHashSet.add("admin");
System.out.println(linkedHashSet);
}
}
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧