ฉันต้องการประกาศทิศทาง enum ซึ่งมีวิธีการที่ส่งกลับทิศทางตรงกันข้าม (ต่อไปนี้ไม่ถูกต้องตามไวยากรณ์กล่าวคือไม่สามารถสร้างอินสแตนซ์ enums ได้ แต่แสดงให้เห็นถึงจุดของฉัน) เป็นไปได้ใน 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);
}
}
d.getCode() * -1
==-d.getCode()