Die Kombination von Java EnumSets
Frage
Wenn ich eine Enum habe, kann ich einen EnumSet mit der handlichen EnumSet Klasse
erstellenenum Suit { CLUBS, DIAMONDS, HEARTS, SPADES }
EnumSet<Suit> reds = EnumSet.of(Suit.HEARTS, Suit.DIAMONDS);
EnumSet<Suit> blacks = EnumSet.of(Suit.CLUBS, Suit.SPADES);
Geben Sie zwei EnumSets, wie kann ich ein neues EnumSet schaffen, die die Vereinigung der beiden dieser Sätze enthält?
EnumSet<Suit> redAndBlack = ?
Lösung
Ein EnumSet ist auch eine Sammlung, so dass Sie viele der Sammlung API-Aufrufe als auch, wie addAll verwenden können.
EnumSet<Suit> redAndBlack = EnumSet.copyOf(reds);
redAndBlack.addAll(blacks);
Andere Tipps
In diesem Fall könnten Sie auch
EnumSet<Suit> redAndBlack = EnumSet.allOf(Suit.class)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow