Kotlin相当于Java的equalsIgnoreCase

时间:2018-05-06 09:11:11

标签: android kotlin

Kotlin中用于比较equalsIgnoreCase值的Java String相当于什么?

我使用过equals,但它并不区分大小写。

5 个答案:

答案 0 :(得分:42)

您可以使用equals,但请指定ignoreCase参数:

"example".equals("EXAMPLE", ignoreCase = true)

答案 1 :(得分:3)

通常,您不需要寻找替代方案,因为Kotlin会重用现有的Java类型,例如String。实际上,这些类型映射到Kotlin内部类型。在String的情况下,它看起来像这样:

java.lang.String - > kotlin.String

因此,只有在equalsIgnoreCase中也提供了所需的方法kotlin.String,才可以使用。String。 Kotlin设计者决定提供一个更通用的equals函数,让你用布尔参数指定不区分大小写。

如果真的有必要,可以随时使用Java ("hello" as java.lang.String).equalsIgnoreCase("Hello") 课程(不推荐使用,IntelliJ会抱怨这个):

kotlin.String

借助扩展功能,我们甚至可以将功能添加到fun String.equalsIgnoreCase(other: String) = (this as java.lang.String).equalsIgnoreCase(other) 类:

python myapp.py --some_int_arg 3 --noboolean_value

答案 2 :(得分:0)

@hluhovskyi的答案是正确的,但是要在EditTextTextView上使用它,请使用以下命令-

etPassword.text.toString().equals(etConfirmPassword.text.toString(), ignoreCase = false)

答案 3 :(得分:0)

根据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
    }
}

答案 4 :(得分:-1)

您可以使用equals但可以指定ignoreCase参数:

"your string".equals("YOUR STRING", ignoreCase = true)