Подтвердить что ты не робот

Объединение Java EnumSets

Если у меня есть 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);

Дайте два набора EnumSets, как я могу создать новый EnumSet, который содержит объединение обоих этих наборов?

EnumSet<Suit> redAndBlack = ?

4b9b3361

Ответ 1

EnumSet также является коллекцией, поэтому вы можете также использовать многие вызовы API Collection, такие как addAll.

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

Ответ 2

В этом случае вы также можете использовать

EnumSet<Suit> redAndBlack = EnumSet.allOf(Suit.class)