Какой результат работы программы?

public class Test {
    public static void main(String[] args) {
        Integer i1 = 1000;
        Integer i2 = 1000;
        System.out.println(i1 == i2);
        System.out.println(i1 == 1000);
    }
}
Explanation

При преобразовании значения 1000 в объект-оболочку каждый раз создаётся новый экземпляр Integer. Поэтому в первом сравнении получаем false.

Если в операции == сравниваются примитивы и объекты-оболочки, то объекты-оболочки преобразовываются в примитивы. Поэтому во втором сравнении получаем true.


Следи за CodeGalaxy

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

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