Вы можете использовать equals, но укажите параметр ignoreCase:
"example".equals("EXAMPLE", ignoreCase = true)
Как правило, вам не нужно искать альтернативы, поскольку Kotlin повторно использует существующие типы Java, такие как String. Фактически, эти типы отображаются на внутренние типы Kotlin. В случае с String это выглядит так:
java.lang.String -> kotlin.String
Следовательно, желаемый метод equalsIgnoreCase был бы доступен, только если бы он также был предоставлен в kotlin.String, чего нет. Разработчики Kotlin решили предоставить более общую функцию equals, которая позволяет вам указывать нечувствительность к регистру с помощью логического параметра.
Вы можете использовать класс Java String в любое время, если это действительно необходимо (это не рекомендуется, IntelliJ будет жаловаться на это):
("hello" as java.lang.String).equalsIgnoreCase("Hello")
С помощью функции расширения мы могли бы даже добавить функциональность к классу kotlin.String:
fun String.equalsIgnoreCase(other: String) =
(this as java.lang.String).equalsIgnoreCase(other)
В Kotlin реализована функция equalIgnoreCase, но с небольшими изменениями, например, "str1" .equal ("Str1", true) для игнорирования регистра и "str1" .equal ("Str1", false) для случая совпадения. Второй аргумент является необязательным, вы можете его пропустить. По умолчанию это false и применяется в случае совпадения.
Ответ @ hluhovskyi правильный, однако, чтобы использовать его на EditText или TextView, используйте следующее -
etPassword.text.toString().equals(etConfirmPassword.text.toString(), ignoreCase = true)
Согласно документации Kotlin:
fun String?.equals(
other: String?,
ignoreCase: Boolean = false
): Boolean
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.text/equals.html
Например:
val name: String = "Hitesh" when{ name.equals("HITESH", true) -> { // DO SOMETHING } }