我想声明一个枚举Direction,它具有一个返回相反方向的方法(以下语法不正确,即,不能实例化枚举,但它说明了我的观点)。这在Java中可行吗?
这是代码:
public enum Direction {
NORTH(1),
SOUTH(-1),
EAST(-2),
WEST(2);
Direction(int code){
this.code=code;
}
protected int code;
public int getCode() {
return this.code;
}
static Direction getOppositeDirection(Direction d){
return new Direction(d.getCode() * -1);
}
}
只需使用一个开关。您只有4种情况。
—
Sotirios Delimanolis
顺便说一句,
—
tckmn 2013年
d.getCode() * -1
==-d.getCode()
Bloch的“ 有效的Java”的第6章(至少在2E中)可能很有趣,因此强烈建议您这样做。
—
jedwards
ntu.edu.sg/home/ehchua/programming/java/javaenum.html,第2.1节清楚地解释了这一概念
—
vikramvi