组合 Java EnumSet
如果我有一个 Enum,我可以使用方便的 EnumSet 类创建一个 EnumSet
enum Suit { CLUBS, DIAMONDS, HEARTS, SPADES }
EnumSet<Suit> reds = EnumSet.of(Suit.HEARTS, Suit.DIAMONDS);
EnumSet<Suit> blacks = EnumSet.of(Suit.CLUBS, Suit.SPADES);
给定两个 EnumSet,如何创建一个包含这两个集合的并集的新 EnumSet?
EnumSet<套装>;红与黑=?
If I have an Enum, I can create an EnumSet using the handy EnumSet class
enum Suit { CLUBS, DIAMONDS, HEARTS, SPADES }
EnumSet<Suit> reds = EnumSet.of(Suit.HEARTS, Suit.DIAMONDS);
EnumSet<Suit> blacks = EnumSet.of(Suit.CLUBS, Suit.SPADES);
Give two EnumSets, how can I create a new EnumSet which contains the union of both of those sets?
EnumSet<Suit> redAndBlack = ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
EnumSet 也是一个集合,因此您也可以使用许多 Collection API 调用,例如 addAll。
An EnumSet is also a collection, so you can use many of the Collection API calls as well, such as addAll.
在这种情况下,您还可以使用
In this case, you could also use
以下是提取到泛型中的答案,您可以将其与任意两个
EnumSet
一起使用来合并它们。Here's the answer extracted into a generic that you can use with any two
EnumSet<T>
's to merge them.