Существует ли в Java стандартный статический метод с нулевым или одинаковым значением? - PullRequest
95 голосов
/ 09 октября 2008

Чтобы немного набрать и уточнить мой код, есть ли стандартная версия следующего метода?

public static boolean bothNullOrEqual(Object x, Object y) {
  return ( x == null ? y == null : x.equals(y) );
}

Ответы [ 3 ]

184 голосов
/ 20 февраля 2012

С Java 7 теперь вы можете напрямую сделать нулевой сейф равным:

Objects.equals (x, y)

(библиотека ObjectUtils.equals () Jakarta Commons устарела для Java 7)

23 голосов
/ 09 октября 2008

Если по какой-то причине у вас есть доступ к библиотеке Jakarta Commons, существует ObjectUtils.equals () и множество других полезных функций.

РЕДАКТИРОВАТЬ: неправильно прочитал вопрос

8 голосов
/ 22 сентября 2015

Если вы используете <1.7, но Гуава доступна: <a href="http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/base/Objects.html#equal(java.lang.Object,%20java.lang.Object)" rel="noreferrer">Objects.equal(x, y)

...