Vorrei dichiarare una enum Direction, che ha un metodo che restituisce la direzione opposta (il seguente non è sintatticamente corretto, cioè, le enumerazioni non possono essere istanziate, ma illustra il mio punto). È possibile in Java?
Ecco il codice:
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()