Java 中的樹集和雜湊集之間的差異
雜湊集和樹集都屬於集合框架。HashSet 是 Set 介面的實現,而 TreeSet 實現了已排序的集合。TreeSet 由 TreeMap 支援,而 HashSet 由雜湊對映支援。
| 序號 | 鍵 | 雜湊集 | 樹集 |
|---|---|---|---|
| 1 | 實現 | 雜湊集使用 HashTable 實現 | 樹集使用樹形結構實現。 |
| 2 | 空物件 | HashSet 允許空物件 | 樹集不允許空物件。它會丟擲空指標異常。 |
| 3 | 方法 | 雜湊集使用 equals 方法比較兩個物件 | 樹集使用 compare 方法比較兩個物件。 |
| 4 | 異構物件 | 雜湊集現在不允許異構物件 | 樹集允許異構物件 |
| 5 | 排序 | HashSet 不會維護任何順序 | TreeSet 以排序順序維護物件 |
TreeSet 示例
class TreeSetExmaple {
public static void main(String[] args){
TreeSet<String> treeset = new TreeSet<String>();
treeset.add("Good");
treeset.add("For");
treeset.add("Health");
//Add Duplicate Element
treeset.add("Good");
System.out.println("TreeSet : ");
for (String temp : treeset) {
System.out.println(temp);
}
}
}輸出
TreeSet: For Good Health
HashSet 示例
class HashSetExample {
public static void main(String[] args){
HashSet<String> hashSet = new HashSet<String>();
hashSet.add("Good");
hashSet.add("For");
hashSet.add("Health");
//Add Duplicate Element
hashSet.add("Good");
System.out.println("HashSet: ");
for (String temp : hashSet) {
System.out.println(temp);
}
}
}輸出
HashSet: Health For Good
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP