Kann Java Aufzählungen (wie Bitwise in C #) zusammengeführt werden?
Frage
Gibt es eine Möglichkeit in Java eine Aufzählung, deren Werte zu erklären, können zusammen verwendet werden? Zum Beispiel:
enum FileAccess { Read, Write, ReadWrite }
Ist es möglich, als Lese-Schreib Read | Write
(oder alles, was das gleiche Ergebnis ergeben würde) zu definieren?
Lösung
Sie verwenden EnumSet :
EnumSet<FileAccess> readWrite = EnumSet.of(FileAccess.Read, FileAccess.Write);
Dies ist eigentlich etwas eleganter ist als die C # / NET Weg, IMO -.., Abgesehen von allem anderen, man kann zwischen einem Satz und einem einzelnen Wert leicht unterscheiden
Andere Tipps
Siehe EnumSet , die Ihnen erlaubt, dies effizient zu tun:
EnumSet<FileAccess> set = EnumSet.of(READ, WRITE);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow