[英]Sparse Map with Enum keys
我需要使用枚舉鍵創建一個Map,在該映射中實際上只插入一小部分枚舉常量。 最好的方法是什么? 如果EnumMap的基礎數組的長度等於枚舉常量的總數,則EnumMap的效率將會降低。
我建議使用普通的HashMap
。
為枚舉計算哈希既簡單又便宜。 應該沒有明顯的內存開銷,因為您不是在復制枚舉對象,而是創建對同一對象的多個引用。 因此,在存儲整數鍵和存儲對枚舉對象的引用之間應該沒有什么區別。
我還要使用HashMap
或TreeMap
(取決於您是否需要確定性迭代器)。 由於您的數據稀疏,因此任何實際或預期的開銷都不太可能成為嚴重的性能障礙。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.