Question from the Java - Fundamentals test

Test the autoboxing feature in Java.

Hard

What will be the output of the following code :

class AutoboxingQuestion {
    
    
    public static void main(String[] args) {
        Integer a = 10;
        Integer b = 10;
        Integer c = 200;
        Integer d = 200;

        System.out.println(a == b);
        System.out.println(c == d);
    }
}
Author: Joffrey BonifayStatus: PublishedQuestion passed 189 times
Edit
3
Community Evaluations
developer avatar
Selim Hoummadi
30/05/2024
J'ai Ă©tĂ© surpris, je pensais qu'avec l'autoboxing et unboxing, le compilateur aurait gĂ©nĂ©rĂ© des instructions lors de la comparaison. Et j'imagine que ça peut facilement ĂȘtre la source de bug dans des programmes Du coup +1 pour cette question, difficile mais intĂ©ressante et pertinente dans le dĂ©veloppement Java de tous les jours
developer avatar
Mohamed
15/06/2024
Le piÚge des valeurs possibles des entiers "entre -128 et 127" les Integer sont mis dans un cache donc l'opérateur == compare les références des objets, par contre pour la valeur 200 qui est en dehors de l'intervalle, l'opérateur == considÚre que ce sont deux objets avec des références différentes
developer avatar
Marco
11/03/2024
ahh c'est vicieux, il ne faut pas mettre ce genre de question dans un tests de recrutement :)
developer avatar
Auteur anonyme
15/03/2024
Faut aussi des questions pour différencier les casus des nerds !
developer avatar
Marco
15/03/2024
C'est clair, au moins on rigole un peu 😄