Сравнение членов перечисления Java: == или равно()?JAVA

Программисты JAVA общаются здесь
Anonymous
Сравнение членов перечисления Java: == или равно()?

Сообщение Anonymous »

Я знаю, что перечисления Java компилируются в классы с частными конструкторами и множеством общедоступных статических членов. При сравнении двух членов данного перечисления я всегда использовал .equals(), например

Код: Выделить всё

public useEnums(SomeEnum a)
{
if(a.equals(SomeEnum.SOME_ENUM_VALUE))
{
...
}
...
}
Однако я только что наткнулся на код, в котором используется оператор равенства == вместо .equals():

Код: Выделить всё

public useEnums2(SomeEnum a)
{
if(a == SomeEnum.SOME_ENUM_VALUE)
{
...
}
...
}
Какой оператор мне следует использовать?

Подробнее здесь: https://stackoverflow.com/questions/175 ... -or-equals

Вернуться в «JAVA»