English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Confrontare le stringhe in Kotlin, ecco alcuni metodi possibili:
1、Utilizzare l'operatore ==
2、Utilizzare l'estensione di funzione compareTo()
Utilizzeremo l'operatore == per confrontare due stringhe in Kotlin. Secondo la documentazione di Equality di Kotlin, l'operatore == viene utilizzato per la uguaglianza strutturale.
In linguaggio Kotlin: a==b viene implicitamente convertito in a?.equals(b) ?: (b === null)
Assicurati che i valori a e b siano entrambi di tipo String. Se non lo sono, devono essere convertiti in stringa prima del confronto.
/** * Esempio Kotlin, confronta due stringhe se sono uguali*/ fun main(args: Array<String>) { var a: String = "kotlin is easy" var b: String = "kotlin is" + " easy" if(a==b){ println("Le stringhe '$a' e '$b' sono uguali.") } else { println("Le stringhe '$a' e '$b' non sono uguali.") } b = "Kotlin runs on JVM" if(a==b){ println("Le stringhe '$a' e '$b' sono uguali.") } else { println("Le stringhe '$a' e '$b' non sono uguali.") } }
Risultato di output:
Le stringhe 'kotlin is easy' e 'kotlin is easy' sono uguali. Le stringhe 'kotlin is easy' e 'Kotlin runs on JVM' non sono uguali.
Kotlin fornisce l'estensione della funzione compareTo() per String.
La sintassi della funzione compareTo() è la seguente:
fun String.compareTo( other: String, ignoreCase: Boolean = false ): Int
Altri: String è un parametro obbligatorio. ignoreCase è opzionale.
La funzione restituisce un valore intero.
Valore di ritorno | Descrizione |
---|---|
0 | Le due stringhe sono uguali. |
Valore negativo | Se la stringa è minore di un'altra stringa |
Valore positivo | Se la stringa è maggiore di un'altra stringa |
/** * Esempio Kotlin, confronta due stringhe */ fun main(args: Array<String>) { var a: String = "apple" var b: String = "apple" var result = a.compareTo(b) if(result==0){ if(result==0){ } println("'$a' ha meno caratteri rispetto a '$b'.") } println("'$a' ha meno caratteri rispetto a '$b'.") } b = "banana" result = a.compareTo(b) if(result==0){ if(result==0){ } println("'$a' ha meno caratteri rispetto a '$b'.") } println("'$a' ha meno caratteri rispetto a '$b'.") } // compareTo ignora le maiuscole e minuscole, il parametro ignoreCase è true a = "appLE" b = "aPple" println("\nIgnora le maiuscole e minuscole...") result = a.compareTo(b, true) // ignoreCase = true if(result==0){ if(result==0){ } println("'$a' ha meno caratteri rispetto a '$b'.") } println("'$a' ha meno caratteri rispetto a '$b'.") } }
Risultato di output:
Le stringhe 'apple' e 'apple' sono uguali La stringa 'apple' ha meno caratteri rispetto a 'banana'. Ignora le differenze di maiuscole e minuscole... Le stringhe 'appLE' e 'aPple' sono uguali
In questo capitolo, con l'aiuto di programmi di esempio, impareremo a confrontare due stringhe utilizzando l'operatore == e la funzione CompareTo().