English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Il existe plusieurs méthodes pour comparer des chaînes de caractères en Kotlin :
1、Utilisation de l'opérateur ==
2、Utilisation de l'extension fonction compareTo()
Nous utiliserons l'opérateur === pour comparer deux chaînes de caractères en Kotlin. Selon la documentation de l'Égalité de Kotlin, l'opérateur === est utilisé pour une équivalence structurelle.
Dans le langage Kotlin : a==b est implicitement converti en a?.equals(b) ?: (b === null)
Assurez-vous que les deux valeurs a et b sont de type String. Si ce n'est pas le cas, vous devez les convertir en chaînes de caractères avant de les comparer.
/** * Exemple Kotlin, comparaison de deux chaînes de caractères pour vérifier l'égalité*/ fun main(args: Array<String>) { var a: String = "kotlin is easy" var b: String = "kotlin is" + "easy" if(a==b){ println("Les chaînes de caractères '$a' et '$b' sont égales.") } else { println("Les chaînes de caractères '$a' et '$b' ne sont pas égales.") } b = "Kotlin runs on JVM" if(a==b){ println("Les chaînes de caractères '$a' et '$b' sont égales.") } else { println("Les chaînes de caractères '$a' et '$b' ne sont pas égales.") } }
Résultat de la sortie :
Les chaînes de caractères 'kotlin is easy' et 'kotlin is easy' sont égales. Les chaînes de caractères 'kotlin is easy' et 'Kotlin runs on JVM' ne sont pas égales.
Kotlin fournit une extension compareTo() pour String.
La syntaxe de la fonction compareTo() est la suivante :
fun String.compareTo( other: String, ignoreCase: Boolean = false ): Int
Autres : String est un paramètre obligatoire. ignoreCase est optionnel.
Cette fonction retourne une valeur entière.
Valeur de retour | Description |
---|---|
0 | Ces deux chaînes de caractères sont égales. |
Entier négatif | Si cette chaîne de caractères est inférieure à l'autre chaîne |
Entier positif | Si cette chaîne de caractères est supérieure à l'autre chaîne |
/** * Exemple Kotlin, comparaison de deux chaînes de caractères */ fun main(args: Array<String>) { var a: String = "apple" var b: String = "apple" var result = a.compareTo(b) if(result==0){ println("Les chaînes '$a' et '$b' sont égales"); } println("'$a' est inférieur au nombre de caractères de '$b'.") } println("'$a' est inférieur au nombre de caractères de '$b'.") } b = "banana" result = a.compareTo(b) if(result==0){ println("Les chaînes '$a' et '$b' sont égales"); } println("'$a' est inférieur au nombre de caractères de '$b'.") } println("'$a' est inférieur au nombre de caractères de '$b'.") } // compareTo ignoreCase paramètre est true a = "appLE" b = "aPple" println("\nIgnorer la casse...") result = a.compareTo(b, true) // ignoreCase = true if(result==0){ println("Les chaînes '$a' et '$b' sont égales"); } println("'$a' est inférieur au nombre de caractères de '$b'.") } println("'$a' est inférieur au nombre de caractères de '$b'.") } }
Résultat de la sortie :
Les chaînes 'apple' et 'apple' sont égales La chaîne 'apple' est inférieure à la chaîne 'banana' en nombre de caractères. Ignorer la casse... Les chaînes 'appLE' et 'aPple' sont égales
Dans ce chapitre, avec l'aide d'exemples de programmes, apprenons à utiliser l'opérateur == et la fonction CompareTo() pour comparer deux chaînes.