może Każdy organ wyjaśni mi, co się dzieje w danych wyjściowych. Jeśli == jest używane do porównania dwóch wartości zadanych. zmienna po prostu sprawdza swoje odwołanie, jeśli są one takie same, jak wprowadzono, jeśli ciało, to dlaczego to, do cholery, jest równe, jeśli cretowanie statycznej metody valueOf() i ee == ff nie jest równe (co jest ok), jeśli tworzenie jego obiekt za pomocą nowego słowa kluczowego?operator == zachowanie różnicy na obiekcie klasy opakowującej
static void main(String args[])
{
Integer aa = Integer.valueOf("12");
Integer bb = Integer.valueOf("12");
if(aa==bb)System.out.println("aa==bb");
if(aa!=bb)System.out.println("aa!=bb");
Integer ee = new Integer("12");
Integer ff = new Integer("12");
if(ee==ff)System.out.println("ee==ff");
if(ee!=ff)System.out.println("ee!=ff");
}
wyjściowa:
aa == bb
ee = ff
Interesujący artykuł, w którym opisano Twój problem: http://tech.puredanger.com/2007/02/01/valueof/ –