在此程序中,您將學(xué)習(xí)在Kotlin中比較兩個(gè)字符串。
fun main(args: Array<String>) {
val style = "Bold"
val style2 = "Bold"
if (style == style2)
println("相等")
else
println("不相等")運(yùn)行該程序時(shí),輸出為:
相等
在上面的程序中,我們有兩個(gè)字符串style 和style2。我們僅使用相等運(yùn)算符(==)比較兩個(gè)字符串,該字符串將值Bold與Bold進(jìn)行比較并輸出 相等。
fun main(args: Array<String>) {
val style = "Bold"
val style2 = "Bold"
if (style.equals(style2))
println("相等")
else
println("不相等")
}運(yùn)行該程序時(shí),輸出為:
相等
在上面的程序中,我們有兩個(gè)字符串,style 和 style2都包含相同的單詞 Bold。
正如您看到的,我們已經(jīng)使用equals()方法來比較字符串。像示例1一樣,它將值Bold與Bold進(jìn)行比較。
fun main(args: Array<String>) {
val style = buildString { "Bold" }
val style2 = buildString { "Bold" }
if (style === style2)
println("等于")
else
println("不等于")
}運(yùn)行該程序時(shí),輸出為:
不等于
在上面的程序中,我們不是使用引號(hào)創(chuàng)建字符串,而是使用了輔助方法buildString來創(chuàng)建String對(duì)象。
除了使用==運(yùn)算符外,我們還使用===(引用相等運(yùn)算符)來比較字符串。 該運(yùn)算符比較style和style2是否本質(zhì)上是同一對(duì)象。
由于它們不是,所以不等于打印在屏幕上。
這是在Java中可能進(jìn)行的字符串比較。
fun main(args: Array<String>) {
val style = buildString { "Bold" }
val style2 = buildString { "Bold" }
var result = style.equals("Bold") // true
println(result)
result = style2 === "Bold" // false
println(result)
result = style === style2 // false
println(result)
result = "Bold" === "Bold" // true
println(result)
}運(yùn)行該程序時(shí),輸出為:
true false false true
以下是等效的Java代碼:比較字符串的Java程序。