Почему конструкция работает (java)?
Потому что сначала выполняется вызов System.out.printf("Hello world") и уже только после этого результат вызова System.out.printf("Hello world") сравнивается с null
Метод System.out.printf("Hello world") будет выполнен для проверки условия на равенство null.