Sobes.tech
Junior — Middle

Kā tiek veikta dažādu datu tipu vienādības pārbaude?

sobes.tech AI

Atbilde no AI

Java valodā atšķirīgu datu tipu vienlīdzības pārbaude ir atkarīga no tā, vai tie ir primitiivi tipi vai objekti.

  • Primitīviem tipiem (int, double, boolean utt.) tiek izmantots operators ==, kas tieši salīdzina vērtības.

  • Objektiem operators == salīdzina atsauces (atmiņas adreses), nevis objektu saturu.

  • Objekta satura salīdzināšanai tiek izmantota metode equals(), kuru var pārdefinēt pielāgotai salīdzināšanas loģikai.

Piemērs:

Integer a = 1000;
Integer b = 1000;
System.out.println(a == b); // nepatiesa, dažādi objekti
System.out.println(a.equals(b)); // patiesa, vērtības ir vienādas

int x = 5;
int y = 5;
System.out.println(x == y); // patiesa, primitivie tiek salīdzināti pēc vērtības

Salīdzinot dažādus tipus (piemēram, Integer un String), equals() metode parasti atgriezīs false, jo tipi nesakrīt.