在Kotlin中比較字符串,以下是一些可能的方法:
1、使用“ ==”運算符
2、使用compareTo()擴展函數(shù)
我們將使用 = = 運算符來比較 Kotlin 的兩個字符串。根據(jù) Kotlin 的 Equality 文檔,= = 操作符用于結(jié)構(gòu)相等。
在 Kotlin語言中: a==b 被隱式轉(zhuǎn)換為 a?.equals(b) ?: (b === null)
確保兩個值a和b均為字符串類型。 如果不是字符串,那么需要在比較之前將它們轉(zhuǎn)換為字符串。
/**
* Kotlin示例,比較兩個字符串是否相等*/
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' 不相等。
Kotlin為String提供了compareTo()擴展函數(shù)。
compareTo()函數(shù)的語法如下:
fun String.compareTo( other: String, ignoreCase: Boolean = false ): Int
其他:String 是強制性參數(shù)。ignoreCase 是可選的。
該函數(shù)返回整數(shù)值。
| 返回值 | 描述 |
|---|---|
| 0 | 這兩個字符串相等。 |
| 負(fù)整數(shù) | 如果該字符串小于另一個字符串 |
| 正整數(shù) | 如果該字符串大于另一個字符串 |
/**
* Kotlin示例,比較兩個字符串
*/
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í)使用 == 運算符 和 CompareTo()函數(shù)比較兩個字符串。