enum的一些聲明:java
public enum Direction { EAST("0"), WEST("1"), SOUTH("2"), NORTH("3"); private Direction(String angle){ this.angle =angle; } String angle; public String getAngle(){ return angle; } }
以上enum的聲明方式至關於java中靜態內部類聲明 static final字符串,以下:ide
public class EqualDirection { public static class Direction{ public static final String EAST ="0"; public static final String WEST = "1"; public static final String SOUTH = "3"; public static final String NORTH = "4"; } }
以上這兩個是等價的。爲何是靜態內部類呢?由於只加載一次啊,在enum中也是隻生成一次。ui
因此若是是同一個enum時,用==就能夠判斷enum相等。this
參考code