enumset_枚举集合的EnumSet
生活随笔
收集整理的這篇文章主要介紹了
enumset_枚举集合的EnumSet
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
enumset
在上一篇博客文章中,我們發現了EnumMap用于帶有枚舉鍵的映射。 您可能已經觀察到,還有一個專門針對枚舉優化的Set : EnumSet 。
我們再次定義一個CoffeeType枚舉:
public enum CoffeeType {ESPRESSO, POUR_OVER, FRENCH_PRESS, LATTE, FLAT_WHITE }現在,我們可以使用EnumSet實現創建此枚舉類型的集合:
Set<CoffeeType> favoriteCoffeeTypes = EnumSet.of(ESPRESSO, POUR_OVER, LATTE);assertThat(favoriteCoffeeTypes).containsOnly(ESPRESSO, POUR_OVER, LATTE);favoriteCoffeeTypes仍然像任何Set一樣起作用,也就是說,添加重復項不會更改其內容:
favoriteCoffeeTypes.add(POUR_OVER);assertThat(favoriteCoffeeTypes).containsOnly(ESPRESSO, POUR_OVER, LATTE);有趣的旁注:如果您研究JDK,則會看到EnumSet由RegularEnumSet和JumboEnumSet都實現了; 枚舉元素的數量決定了所使用的實現。 如果您對EnumSet實現如何高效管理感興趣,我挑戰您看看這些類。 提示:按位操作:-)
這篇帖子從我的時事通訊018中轉貼了。
翻譯自: https://www.javacodegeeks.com/2018/01/enumset-enum-collections.html
enumset
總結
以上是生活随笔為你收集整理的enumset_枚举集合的EnumSet的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 品牌电脑和组装电脑的区别品牌电脑和组装电
- 下一篇: 老司机教您自己组装电脑如何省钱如何组装一