Sobes.tech
Junior — Middle

Ինչպե՞ս է Java-ում օբյեկտների հավասարության համեմատությունը իրականացվում `==` օպերատորով։

sobes.tech AI

Պատասխան AI-ից

Java-ում, օբյեկտների համեմատության ժամանակ == օպերատորը ստուգում է, արդյոք երկու փոփոխականները հղում են անում նույն օբյեկտին հիշողության մեջ, այսինքն՝ համեմատում է հղումները, ոչ թե օբյեկտների պարունակությունը:

Եթե ցանկանում եք համեմատել օբյեկտների պարունակությունը, օգտագործեք equals() մեթոդը, որը կարող է վերագրել դասում՝ սահմանելու համար համեմատության տրամաբանությունը:

Օրինակ՝

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

System.out.println(a == b);       // սխալ, տարբեր օբյեկտներ
System.out.println(a.equals(b));  // ճիշտ, պարունակությունը նույնն է

Այսպիսով, == օպերատորը օբյեկտների համար ստուգում է հղումների հավասարությունը, ոչ թե արժեքները։