Java 教程

Java 控制語句

面向物件程式設計

Java 內建類

Java 檔案處理

Java 錯誤與異常

Java 多執行緒

Java 同步

Java 網路

Java 集合

Java 介面

Java 資料結構

Java 集合演算法

高階 Java

Java 雜項

Java API 和框架

Java 類參考

Java 有用資源

Java - HashSet 類



簡介

Java HashSet 類實現了 Set 介面,其底層由雜湊表支援。以下是關於 HashSet 的重要要點:

  • 此類不保證集合的迭代順序;特別是,它不保證順序會隨著時間的推移保持不變。

  • 此類允許 null 元素。

類宣告

以下是 java.util.HashSet 類的宣告:

public class HashSet<E>
   extends AbstractSet<E>
   implements Set<E>, Cloneable, Serializable

引數

以下是 java.util.HashSet 類的引數:

E - 此集合維護的元素型別。

類構造方法

序號 構造方法及描述
1

HashSet( )

此構造方法構建一個預設的 HashSet。

2

HashSet(Collection c)

此構造方法使用集合 c 的元素初始化雜湊集。

3

HashSet(int capacity)

此構造方法將雜湊集的容量初始化為給定的整數值 capacity。當元素新增到 HashSet 時,容量會自動增長。

4

HashSet(int capacity, float fillRatio)

此構造方法根據其引數初始化雜湊集的容量和填充率(也稱為載入因子)。

此處填充率必須介於 0.0 和 1.0 之間,它決定了雜湊集在向上調整大小之前可以填充到什麼程度。具體來說,當元素數量大於雜湊集容量乘以其填充率時,雜湊集將擴充套件。

除了從其父類繼承的方法外,HashSet 還定義了以下方法:

序號 方法及描述
1 boolean add(E e)

如果指定的元素尚不存在,則此方法將該元素新增到此集合中。

2 void clear()

此方法從此集合中刪除所有元素。

3 Object clone()

此方法返回此 HashSet 例項的淺複製,元素本身不會被克隆。

4 boolean contains(Object o)

如果此集合包含指定的元素,則此方法返回 true。

5 boolean isEmpty()

如果此集合不包含任何元素,則此方法返回 true。

6 Iterator<E> iterator()

此方法返回此集合中元素的迭代器。

7 boolean remove(Object o)

如果存在,則此方法從此集合中刪除指定的元素。

8 int size()

此方法返回此集合中元素的數量(其基數)。

9 Spliterator<E> spliterator()

此方法返回此集合中元素的延遲繫結且快速失敗的 Spliterator。

示例

以下程式說明了 HashSet 支援的幾種方法:

import java.util.*;
public class HashSetDemo {

   public static void main(String args[]) {
      // create a hash set
      HashSet hs = new HashSet();
      
      // add elements to the hash set
      hs.add("B");
      hs.add("A");
      hs.add("D");
      hs.add("E");
      hs.add("C");
      hs.add("F");
      System.out.println(hs);
   }
}

這將產生以下結果:

輸出

[A, B, C, D, E, F]

繼承的方法

此類繼承自以下類的方法:

  • java.util.AbstractSet
  • java.util.AbstractCollection
  • java.util.Object
  • java.util.Set
java_collections.htm
廣告