Kotlin 比較字符串

在Kotlin中比較字符串,以下是一些可能的方法:

1、使用“ ==”運(yùn)算符
2、使用compareTo()擴(kuò)展函數(shù)

使用“ ==”運(yùn)算符比較字符串

我們將使用 = = 運(yùn)算符來(lái)比較 Kotlin 的兩個(gè)字符串。根據(jù) Kotlin 的 Equality 文檔,= = 操作符用于結(jié)構(gòu)相等。

在 Kotlin語(yǔ)言中: a==b 被隱式轉(zhuǎn)換為 a?.equals(b) ?: (b === null)

確保兩個(gè)值a和b均為字符串類型。 如果不是字符串,那么需要在比較之前將它們轉(zhuǎn)換為字符串。

/**
* Kotlin示例,比較兩個(gè)字符串是否相等*/
 
fun main(args: Array<String>) {
    var a: String = "kotlin is easy"
    var b: String = "kotlin is" + " easy"
    if(a==b){
        println("字符串 '$a' 和 '$b' 相等。")
    } else {
        println("字符串 '$a' 和'$b' 不相等。")
    }
 
    b = "Kotlin runs on JVM"
    if(a==b){
        println("字符串 '$a' 和 '$b' 相等。")
    } else {
        println("字符串 '$a' 和 '$b' 不相等。")
    }
}

輸出結(jié)果:

字符串 'kotlin is easy' 和 'kotlin is easy' 相等。
字符串 'kotlin is easy' 和 'Kotlin runs on JVM' 不相等。

使用compareTo()擴(kuò)展函數(shù)比較字符串

Kotlin為String提供了compareTo()擴(kuò)展函數(shù)。
compareTo()函數(shù)的語(yǔ)法如下:

fun String.compareTo(
      other: String, 
      ignoreCase: Boolean = false
): Int

其他:String 是強(qiáng)制性參數(shù)。ignoreCase 是可選的。

該函數(shù)返回整數(shù)值。

返回值描述
0

這兩個(gè)字符串相等。

負(fù)整數(shù)

如果該字符串小于另一個(gè)字符串

正整數(shù)

如果該字符串大于另一個(gè)字符串

/**
* Kotlin示例,比較兩個(gè)字符串
*/
fun main(args: Array<String>) {
    var a: String = "apple"
    var b: String = "apple"
    var result = a.compareTo(b)
    if(result==0){
        println("字符串 '$a' 和 '$b' 相等")
    } else if(result < 0){
        println("'$a' 小于 '$b' 字符數(shù).")
    } else{
        println("'$a' 小于 '$b' 字符數(shù).")
    }
 
    b = "banana"
    result = a.compareTo(b)
    if(result==0){
        println("字符串 '$a' 和 '$b' 相等")
    } else if(result < 0){
        println("'$a' 小于 '$b' 字符數(shù).")
    } else{
        println("'$a' 小于 '$b' 字符數(shù).")
    }
 
    // compareTo 忽略大小寫,ignoreCase參數(shù) 為 true
    a = "appLE"
    b = "aPple"
    println("\n忽略大小寫...")
    result = a.compareTo(b, true) // ignoreCase = true
    if(result==0){
        println("字符串 '$a' 和 '$b' 相等")
    } else if(result < 0){
        println("'$a' 小于 '$b' 字符數(shù).")
    } else{
        println("'$a' 小于 '$b' 字符數(shù).")
    }
}

輸出結(jié)果:

字符串 'apple' 和 'apple' 相等
'apple' 小于 'banana' 字符數(shù).
 
忽略大小寫...
字符串 'appLE' 和 'aPple' 相等

 
本章在示例程序的幫助下,學(xué)習(xí)使用 == 運(yùn)算符 和 CompareTo()函數(shù)比較兩個(gè)字符串。

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清