Каким будет результат выполнения данного кода:
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
Зареєструйся Зараз
або Підпишись на майбутні тести