C# HashSet類型


1.HashSet<T>類,主要被設計用來存儲集合,做高性能集運算,例如兩個集合求交集、並集、差集等。從名稱可以看出,它是基於Hash的,可以簡單理解為沒有Value的Dictionary。

2.HashSet<T>不能用索引訪問,不能存儲重復數據,元素T必須正確實現了EqualsGetHashCode

3.HashSet<T>的一些特性如下:

 (1)HashSet<T>中的值不能重復且沒有順序。

 (2)HashSet<T>的容量會按需自動添加。

4.優勢:

     (1)HashSet的優勢在與運算快,作為一種存放在內存的數據,可以很快的進行設置和取值的操作。

     (2)使用HashSet作為內存存儲的快速數據庫,這個需要隨時跟新HashSet里面的數據,因為在HashSet中一個長時間未被訪問的數據,將被系統自動回收掉,那么就會導致失敗,那么如何才能保證HashSet里面的值是長存在的而且達到不斷的更新里面的值呢?

首先程序過來訪問我們HashSet里面有沒有需要的數據,如果有我們需要的數據就直接返回給用戶,不用調用查詢數據庫的操作。如果HashSet里面沒有我們需要的數據,程序再去查詢一次數據庫是否有該Query數據,如果有返回給用戶同時把查詢的結果添加到HashSet里面,這么做可以一定程度的降低查詢數據庫所帶來的不便,但是不能根除,需要進一步提升性能,可以查看前面的緩存策略使用redis來提高網站查詢和訪問。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM