Java 열거는 병합 될 수 있습니까 (C#의 비트와 같이)?
문제
Java에는 값이 함께 사용할 수있는 열거를 선언 할 수있는 방법이 있습니까? 예를 들어:
enum FileAccess { Read, Write, ReadWrite }
readWrite를 다음과 같이 정의 할 수 있습니까? Read | Write
(또는 동일한 결과를 얻을 수있는 것)?
해결책
너는 사용한다 열거:
EnumSet<FileAccess> readWrite = EnumSet.of(FileAccess.Read, FileAccess.Write);
이것은 실제로 C#/. Net Way, IMO보다 다소 우아합니다. 다른 것 외에도 세트와 단일 값을 쉽게 구별 할 수 있습니다.
다른 팁
보다 열거 이를 효율적으로 수행 할 수 있습니다.
EnumSet<FileAccess> set = EnumSet.of(READ, WRITE);
제휴하지 않습니다 StackOverflow