Можно написать условие вот так: if (repository == null) {} а можно вот так: if (null == repository) {} В чем разница?
Ответ
Условиями Йоды (Yoda Conditions) называется приём этот. Первой константа ставится, если ошибётесь и используете = вместо == вы, указал на эту ошибку компилятор вам чтобы. В Java это несущественно, т.к. ошибка будет почти всегда, исключение описано в соседнем ответе. Есть другой случай, когда порядок сравнения имеет значение в Java — .equals(). Предположим, у вас есть объект, который вы получаете извне метода и образец для сравнения. if (foo.equals(sample)) {...} Если сравнивать так, что может случиться, что полученный объект будет равен null и тогда будет выброшено исключение. А ещё это может быть хитрый объект, в котором .equals() переопределено так, чтобы всегда возвращать true. Гораздо надёжнее сравнивать в обратном порядке: if (sample.equals(foo)) {...}