Überprüfung auf Gleichheit in Kotlin

Für zukünftige Studenten des Kurses "Kotlin Backend Developer" haben wir eine Übersetzung von nützlichem Material vorbereitet.



Wir laden Sie außerdem ein, die offene Lektion zum Thema
"Kotlin-Multiplattform: Front / Back in einer Sprache" anzusehen .






Es gibt drei Möglichkeiten, die Gleichheit in der Kotlin-Sprache zu überprüfen:





Der erste Weg ist, Strukturen zu vergleichen (==)





Mit dem Operator ==



in Kotlin können Sie Daten vergleichen, die in Variablen enthalten sind. In Java wird dieser Operator jedoch verwendet, um Referenzen von zwei Variablen zu vergleichen.





Bei benutzerdefinierten Klassen ==



kann damit der Inhalt von Datenklassen verglichen werden. Andernfalls vergleicht dieser Operator Referenzen.





Der zweite Weg ist das Vergleichen von Links (===)





Ein Operator ===



in Kotlin wird verwendet, um Referenzen von zwei Variablen zu vergleichen. Bei Grundelementen ist es ===



jedoch äquivalent ==



, dh es überprüft die Werte.





Der dritte Weg ist die Methode equals







Diese Methode equals



führt in Kotlin dieselbe Funktion aus wie ==



.





equals



==



Float



Double



. Float



Double



==



 IEEE 754, equals



, equals



, :





  • NaN ;





  • NaN , , POSITIVE_INFINITY



    ;





  • 0,0 , 0,0.





, , .





1.

val firstInt = 5
val secondInt = 5

println(firstInt == secondInt)  // true
println(firstInt === secondInt) // true
println(firstInt.equals(secondInt)) // true
      
      



.





2.

val firstInt = Integer(5)
val secondInt = Integer(5)
println(firstInt == secondInt)  // true
println(firstInt === secondInt) // false
println(firstInt.equals(secondInt)) // true
      
      



firstInt



secondInt



. (===



) false



. equals



. , true



, 5



.





3.

class Student(val name : String)

val student1 = Student(“Jasmeet”)
val student2 = Student(“Jasmeet”)

println(student1 === student2) // false
println(student1 == student2) // false
println(student1.equals(student2)) // false
println(student1.name === student2.name) // true
println(student1.name == student2.name) // true
println(student1.name.equals(student2.name)) // true
      
      



student



, , , . , Java.





, data-.

data class Student(val name : String)

val student1 = Student(“Jasmeet”)
val student2 = Student(“Jasmeet”)

println(student1 === student2) // false
println(student1 == student2) // true
println(student1.equals(student2)) // true
      
      



4.

val negativeZero = -0.0f
val positiveZero = 0.0f

println(negativeZero == positiveZero) // true
println(negativeZero.equals(positiveZero)) // false
      
      



, ==



IEEE 754. true



. equals



, false



.





: https://kotlinlang.org/docs/reference/equality.html






"Kotlin Backend Developer".









"Kotlin multiplatform: Front/Back ".













All Articles