Что напечатает следущий код?

public class Test {
    public static boolean methodOne() {
        System.out.println("methodOne ");
        return false;
    }

    public static boolean methodTwo() {
        System.out.println("methodTwo ");
        return true;
    }

    public static boolean methodThree() {
        System.out.println("methodThree ");
        return true;
    }

    public static void main(String[] args){
        System.out.println(Test.methodOne() || Test.methodTwo() || Test.methodThree());
    }
}
Explanation
Феномен "ускоренного вычисления" при работе с логическими выражениями. methodThree не будет вызван, т.к. результат уже не зависит от него.
Строки "methodOne" и "methodTwo" выводятся при вычислении значения выражения, затем выводится само значение выражения - true.

Слідкуй за CodeGalaxy

Мобільний додаток Beta

Get it on Google Play
Зворотній Зв’язок
Продовжуйте вивчати
тести з Java
Cosmo
Зареєструйся Зараз
або Підпишись на майбутні тести