В чем разница между null!=variable
и variable!=null
Какой метод идеально подходит для использования?Разница между нулем! = Переменная и переменная! = Null
if ((null != value1) || (null != value2) || (null != value3)) {
.......
.......
.......
}
или
if ((value1 != null) || (value2 != null) || (value3 != null)) {
.......
.......
.......
}
Пожалуйста, предложите лучший вариант и логическое изменение между этим?
Нет разницы. В прежние времена, возможно, еще и сегодня ;-), 'constant! = X' часто рекомендуется на таких языках, как C. Это называлось [Yoda Conditions] (http://en.wikipedia.org/wiki/Yoda_conditions) и помогли избежать таких случаев, как 'x = constant', поскольку' constant = x' поднимет ошибку компилятора. (Тем не менее, в Java единственный случай, когда это имеет значение, когда вы делаете сравнение с 'boolean', которого следует избегать в любом случае.) – user2864740
Я видел коды, сравнивающие значение null с переменной, поэтому я задал этот вопрос. – JayKay
Ну, вы должны убедиться, что выражение * не * null, прежде чем метод будет вызван на него, - чтобы не был поднят NPE. Однако не имеет значения, является ли оно «null! = X» или «x! = Null».Выберите один и * быть последовательным * (что также означает следующую форму, уже использованную в проекте). – user2864740