English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Existem várias maneiras de comparar strings no Kotlin:
1、usar o operador "=="
2、usar a função de extensão compareTo()
Vamos usar o operador de = = para comparar duas strings no Kotlin. De acordo com o documento de Equality do Kotlin, o operador de = = é usado para comparação de estrutura.
No idioma Kotlin: a==b é implicitamente convertido para a?.equals(b) ?: (b === null)
Certifique-se de que os dois valores a e b sejam do tipo String. Se não forem strings, precisará convertê-los em strings antes da comparação.
/** * Exemplo Kotlin, comparar se duas strings são iguais*/ fun main(args: Array<String>) { var a: String = "kotlin is easy" var b: String = "kotlin is" + "easy" if(a==b){ println("As strings '$a' e '$b' são iguais.") } else { println("As strings '$a' e '$b' não são iguais.") } b = "Kotlin runs on JVM" if(a==b){ println("As strings '$a' e '$b' são iguais.") } else { println("As strings '$a' e '$b' não são iguais.") } }
Resultados de Saída:
As strings 'kotlin is easy' e 'kotlin is easy' são iguais. As strings 'kotlin is easy' e 'Kotlin runs on JVM' não são iguais.
Kotlin fornece a função de extensão compareTo() para String.
A sintaxe da função compareTo() é a seguinte:
fun String.compareTo( other: String, ignoreCase: Boolean = false ): Int
Outro: String é um parâmetro obrigatório. ignoreCase é opcional.
Esta função retorna um valor inteiro.
Retorno | Descrição |
---|---|
0 | Essas duas strings são iguais. |
Número negativo | Se esta string for menor que a outra string |
Número positivo | Se esta string for maior que a outra string |
/** * Exemplo Kotlin, comparar duas strings */ fun main(args: Array<String>) { var a: String = "apple" var b: String = "apple" var result = a.compareTo(b) if(result==0){ println("As strings '$a' e '$b' são iguais"). } println("'$a' tem menos caracteres do que '$b'.") } println("'$a' tem menos caracteres do que '$b'.") } b = "banana" result = a.compareTo(b) if(result==0){ println("As strings '$a' e '$b' são iguais"). } println("'$a' tem menos caracteres do que '$b'.") } println("'$a' tem menos caracteres do que '$b'.") } // compareTo ignora maiúsculas e minúsculas, o parâmetro ignoreCase é true a = "appLE" b = "aPple" println("\nIgnorar maiúsculas e minúsculas...") result = a.compareTo(b, true) // ignoreCase = true if(result==0){ println("As strings '$a' e '$b' são iguais"). } println("'$a' tem menos caracteres do que '$b'.") } println("'$a' tem menos caracteres do que '$b'.") } }
Resultados de Saída:
As strings 'apple' e 'apple' são iguais A string 'apple' tem menos caracteres do que 'banana'. Ignorar maiúsculas e minúsculas... As strings 'appLE' e 'aPple' são iguais
Nesta seção, aprendemos a usar o operador == e a função CompareTo() para comparar duas strings com a ajuda de programas de exemplo.