Sobes.tech
Junior — Middle

Kā atšķiras objektu salīdzināšana ar == operatoriem Java un Kotlin?

sobes.tech AI

Atbilde no AI

Java operators == salīdzina objektu atsauces, t.i., pārbauda, vai divas mainīgās norāda uz to pašu objektu atmiņā.

Kotlin operators == salīdzina objektu vērtības, izsaucot metodi equals(), t.i., pārbauda loģisko vienādību objekta saturā.

Ja vēlaties salīdzināt atsauces Kotlin, izmantojiet operatoru ===.

Piemērs:

val a = String("test")
val b = String("test")

println(a == b)  // true, vērtības salīdzināšana
println(a === b) // false, dažādi objekti

Java:

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

System.out.println(a == b);      // false, dažādi objekti
System.out.println(a.equals(b)); // true, vērtības salīdzināšana