Para los futuros estudiantes del curso "Kotlin Backend Developer", preparamos una traducción de material útil.
También te invitamos a ver la lección abierta sobre el tema "Multiplataforma de Kotlin: Anverso / reverso en un idioma".
Hay tres formas de verificar la igualdad en el lenguaje Kotlin:
La primera forma es comparar estructuras (==)
El operador ==
en Kotlin le permite comparar datos contenidos en variables. Sin embargo, en Java, este operador se utiliza para comparar referencias de dos variables.
En el caso de las clases personalizadas, ==
se puede utilizar para comparar el contenido de las clases de datos. De lo contrario, este operador compara referencias.
La segunda forma es comparar enlaces (===)
Se ===
utiliza un operador en Kotlin para comparar referencias de dos variables. Sin embargo, en el caso de primitivas, ===
es equivalente ==
, es decir, verifica los valores.
La tercera forma es el método equals
El método equals
realiza la misma función en Kotlin que ==
.
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 multiplatform: Front/Back ".