Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

ความแตกต่างระหว่าง Tree Set และ Hash Set ใน Java


ชุดแฮชและชุดทรีเป็นของเฟรมเวิร์กคอลเล็กชัน HashSet เป็นการนำอินเทอร์เฟซ Set ไปใช้ในขณะที่ชุด Tree ใช้งานชุดที่เรียงลำดับ ชุดต้นไม้ได้รับการสนับสนุนโดย TreeMap ในขณะที่ HashSet ได้รับการสนับสนุนโดย hashmap

ซีเนียร์ เลขที่ คีย์ ชุดแฮช ชุดต้นไม้
1
การนำไปใช้
ตั้งค่าแฮชโดยใช้ HashTable
ชุดต้นไม้ถูกนำมาใช้โดยใช้โครงสร้างแบบต้นไม้
2
Null Object
HashSet อนุญาตให้วัตถุ null
ชุดต้นไม้ไม่อนุญาตให้วัตถุมีค่าว่าง มันส่งข้อยกเว้นตัวชี้ null
3
วิธีการ
Hash set use เท่ากับ method เพื่อเปรียบเทียบสองอ็อบเจกต์
ชุดต้นไม้ใช้วิธีเปรียบเทียบเพื่อเปรียบเทียบวัตถุสองชิ้น
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