如果我有枚举,我可以使用方便的枚举类创建枚举

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<Suit> redAndBlack = ?

有帮助吗?

解决方案

枚举也是一个集合,因此您也可以使用许多Collection API调用,例如Addall。

EnumSet<Suit> redAndBlack = EnumSet.copyOf(reds);
redAndBlack.addAll(blacks);

其他提示

在这种情况下,您也可以使用

EnumSet<Suit> redAndBlack = EnumSet.allOf(Suit.class)
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top