enumは==を使ってもよい
Java5のenum。どうも不勉強で適当に使っていたため、チキンな僕はこれまで比較にequalsを使っていました。
myyasai.equals(野菜.ナス)
しかし、どうやら==で比較できることが保障されているようです。
列挙型
http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/language/enums.html
比較可能かつ直列化可能で
こう書いていいんです。
myyasai == 野菜.ナス
コンパイラがうまいことやってくれるようです。
実際、SunのJDKでEnumクラスの実装を見るとequalsはこうなっています。==するのと一緒じゃん。
public final boolean equals(Object other) { return this==other; }
==だとソースが見やすいし、ぬるぽもないし、これからはじゃんじゃなん==しちゃうぞー。
(注:Stringは通常==はダメです。Integerなどプリミティブラッパは==でぬるぽあります)
ちなみにSerializableも最初からついているので、新たに追加する必要はないようです(今までわざわざ付けていた。アホだ)。
public abstract class Enum> implements Comparable , Serializable {