标签: java enums
Java中是否有一种方法可以声明其值可以一起使用的枚举?例如:
enum FileAccess { Read, Write, ReadWrite }
是否可以将ReadWrite定义为Read | Write(或任何会产生相同结果的东西)?
Read | Write
答案 0 :(得分:23)
您使用EnumSet:
EnumSet<FileAccess> readWrite = EnumSet.of(FileAccess.Read, FileAccess.Write);
这实际上比C#/ .NET方式更优雅,IMO - 除了其他任何东西,你可以很容易地区分集合和单个值。
答案 1 :(得分:4)
请参阅EnumSet,以便您有效地执行此操作:
EnumSet<FileAccess> set = EnumSet.of(READ, WRITE);