Dans le code ci-dessous, le code de hachage est toujours le même. Pourquoi est-ce que c'est comme ça ?
Code :
public class BooleanClass {
public static void main(String[] args) {
Boolean b1 = new Boolean(true);
Boolean b2 = new Boolean(false);
Boolean b3 = new Boolean(true);
Boolean b4 = new Boolean(false);
Boolean b5 = new Boolean(false);
Boolean b6 = new Boolean(true);
System.out.println(b1.hashCode());
System.out.println(b2.hashCode());
System.out.println(b3.hashCode());
System.out.println(b4.hashCode());
System.out.println(b5.hashCode());
System.out.println(b6.hashCode());
}
}
Sortie :
1231
1237
1231
1237
1237
1231
Toujours les mêmes chiffres 1231
y 1237
sont imprimés. Une raison ?