我有这个枚举:
public enum Direction {
LEFT,
RIGHT,
ABOVE,
BELOW
}
Run Code Online (Sandbox Code Playgroud)
我可以获取并设置Direction包含2个或更多值的变量,例如:
Direction fromDirection = Direction.LEFT + Direction.ABOVE
Run Code Online (Sandbox Code Playgroud)
如果有可能,请告诉我如何实现它.
你可以使用java.util.EnumSet:
final Set<Direction> northEast = EnumSet<Direction>.of(Direction.NORTH, Direction.EAST);
Run Code Online (Sandbox Code Playgroud)
当然,您可以使用任何其他集合实现,但EnumSet类型实现为位向量,非常节省空间和时间,并且可能是您的目标的最佳内置工具.
您可能还希望在枚举类型中定义静态方法,以检查有效组合.
| 归档时间: |
|
| 查看次数: |
1468 次 |
| 最近记录: |