91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

HashSet指的是什么

發布時間:2021-12-08 17:51:28 來源:億速云 閱讀:156 作者:柒染 欄目:大數據

本篇文章為大家展示了HashSet指的是什么,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

HashSet 是一個不允許存儲重復元素的集合,它的實現比較簡單,只要理解了 HashMap,HashSet 就水到渠成了。

成員變量

首先了解下 HashSet 的成員變量:

 private transient HashMap<E,Object> map;

    // Dummy value to associate with an Object in the backing Map
    private static final Object PRESENT = new Object();
 

發現主要就兩個變量:
   *map :用于存放最終數據的。
   *RESENT :是所有寫入 map 的 value 值。

 
構造函數
 public HashSet() {
        map = new HashMap<>();
    }

    public HashSet(int initialCapacity, float loadFactor) {
        map = new HashMap<>(initialCapacity, loadFactor);
    }  
 

構造函數很簡單,利用了 HashMap 初始化了 map 。

 
add
  public boolean add(E e) {
        return map.put(e, PRESENT)==null;
    }
 

比較關鍵的就是這個 add() 方法。 可以看出它是將存放的對象當做了 HashMap 的健,value 都是相同的 PRESENT 。由于 HashMap 的 key 是不能重復的,所以每當有重復的值寫入到 HashSet 時,value 會被覆蓋,但 key 不會受到影響,這樣就保證了 HashSet 中只能存放不重復的元素。

HashSet 的原理比較簡單,幾乎全部借助于 HashMap 來實現的。所以 HashMap 會出現的問題 HashSet 依然不能避免。

上述內容就是HashSet指的是什么,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

咸阳市| 澳门| 马山县| 商水县| 济南市| 昭觉县| 北辰区| 延寿县| 临西县| 广安市| 济南市| 徐州市| 开鲁县| 余庆县| 乐昌市| 阿坝| 嘉祥县| 静乐县| 古浪县| 栾川县| 宜兰市| 扶沟县| 灵台县| 屏边| 榆树市| 汝州市| 桃园市| 平安县| 青河县| 兰坪| 碌曲县| 乌鲁木齐市| 永顺县| 深泽县| 安泽县| 北宁市| 田林县| 南康市| 安图县| 辽阳县| 玉门市|