(Qiitaにも投稿しています。)
enumを使うと、可読性が上がる、と言われている。
まず、enumを使ってないパターン。
public static final int BLACK = 1;
public static final int WHITE = 2;
/**
* ・・・main()省略
**/
private String checkColor(int colorCode){
if(colorCode == BLACK){
return "黒";
} else if(colorCode == WHITE){
return "白"
}
}
まだ、定数が2つなので、そこまで読み辛くはないけど、
これが分岐が増えたりすると、大変読み辛くなる。
enumを使うと、ちょっとスッキリする。
public enum Color {
WHITE,
BLACK
}
/**
* ・・・main()省略
**/
private String checkColor(Color color){
if(color == Color.BLACK){
return "黒";
} else if(color == Color.WHITE){
return "白"
}
}
あと、副次的なメリットとして、このcheckColorを呼ぶ時の引数がColorクラスになって、明確になった。呼ぶ側からすると、intで入れる訳の分からない値よりずっと良い。