Каким будет результат выполнения данного кода:
public class Main {
    public static void main(String[] args) {
        int var = 1;
        System.out.println("Переменная var (постфиксный инкремент): " + var++);
        System.out.println("Переменная var (префиксный инкремент): " + ++var); //1
        int var1 = 1;
        int var2 = 1;
        if (var1++ == ++var2)  //2
            System.out.println("Переменные равны");
        else 
            System.out.println("Переменные не равны");
    }
}
Explanation
Операторы инкремента и декремента имеют 2 формы: постфиксная и префиксная. Разница между формами в том, что постфиксная форма оператора выполняется после вычисления выражения, а префиксная до. Т.о. строка с постфиксным выражением var++ даст нам исходное значение переменной var (1), а префиксное — новое значение (3).
По этой же причине при сравнении значений выражений var1++ и ++var2 они будут не равны.

Следи за CodeGalaxy

Мобильное приложение Beta

Get it on Google Play
Обратная Связь
Продолжайте изучать
тесты по Java
Cosmo
Зарегистрируйся сейчас
или Подпишись на будущие тесты