Функция equals

Функция equals предназначена для сравнения двух объектов на равенство по содержанию. В отличие от оператора ==, который для примитивных типов сравнивает значения, а для ссылочных типов сравнивает ссылки, функция equals сравнивает содержимое объектов. Функция определена в классе Any и может быть переопределена в пользовательских классах.

Синтаксис

kotlinopen operator fun equals(other: Any?): Boolean

Пример

Сравнение двух строк с помощью equals:

kotlinval str1 = "abcde"
val str2 = "abcde"
val res = str1.equals(str2)
println(res)

Результат выполнения кода:

kotlinBoolean true

Пример

Сравнение строк с разным регистром:

kotlinval str1 = "abcde"
val str2 = "ABCDE"
val res = str1.equals(str2)
println(res)

Результат выполнения кода:

kotlinBoolean false

Пример

Сравнение строк с игнорированием регистра:

kotlinval str1 = "abcde"
val str2 = "ABCDE"
val res = str1.equals(str2, true)
println(res)

Результат выполнения кода:

kotlinBoolean true

Пример

Сравнение двух массивов:

kotlinval arr1 = arrayOf(1, 2, 3, 4, 5)
val arr2 = arrayOf(1, 2, 3, 4, 5)
val res = arr1.contentEquals(arr2)
println(res)

Результат выполнения кода:

kotlinBoolean true

Пример

Сравнение двух списков:

kotlinval list1 = listOf(1, 2, 3, 4, 5)
val list2 = listOf(1, 2, 3, 4, 5)
val res = list1.equals(list2)
println(res)

Результат выполнения кода:

kotlinBoolean true

Пример

Сравнение двух различных объектов:

kotlinval num = 12345
val str = "12345"
val res = num.equals(str)
println(res)

Результат выполнения кода:

kotlinBoolean false

Пример

Сравнение с null:

kotlinval str = "abcde"
val res = str.equals(null)
println(res)

Результат выполнения кода:

kotlinBoolean false

Смотрите также

  • функцию hashCode,
    которая возвращает хэш-код объекта
  • функцию toString,
    которая возвращает строковое представление объекта