para a resposta ser “equal”, vc precisa utilizar o método equals(), exemplo: i5.equals(j5)
B
brrodo
Este código gera a saída “equal”. Rode o código por você mesmo e confira.
Ao instanciar 2 objetos Integers sem utilizar o construtor da classe Integer, caso os valores estejam no intervalo entre -128 e 127 apenas um objeto Integer será criado no heap. Portanto as duas referências apontam para o mesmo objeto.
S
soublade
ixii…nao entendi…=(
Lavieri
isso é uma conveniencia da JVM para poupar recursos… geralmente os primeiros 127 caracteres tem esse comportamento, para poupar recuros…
o que vc precisa guardar é… não confie em Integer a, b;
em testar algo como a==b … use sempre a.equals(b); … pois se o range de a e b forem superiores a 127 o resultado pode ser inesperado