Sobes.tech
Junior — Middle

Kaip Java kalba įgyvendinamas objektų lygumo palyginimas naudojant == operatorių?

sobes.tech AI

Atsakymas iš AI

Java kalboje, lyginant objektus, operatorius == tikrina, ar abi kintamieji nurodo į tą patį objektą atmintyje, tai yra, lygina nuorodas, o ne objektų turinį.

Jei norite palyginti objektų turinį, naudojate metodą equals(), kurį galima perrašyti klasėje, kad būtų apibrėžta lyginimo logika.

Pavyzdys:

String a = new String("test");
String b = new String("test");

System.out.println(a == b);       // klaidinga, skirtingi objektai
System.out.println(a.equals(b));  // teisinga, turinys vienodas

Taigi, == operatorius objektams tikrina nuorodų lygybę, o ne reikšmes.