Kotlin ha a disposizione l’apposita classe String per rappresentare sequenze alfanumeriche. Ognuno di questi oggetti può contare su molti metodi per poter elaborare i caratteri che contiene.
//inizializzazione di una stringa val frase="Andremo domani al mare perchè oggi mia sorella non si sente bene..." // stampa del quarto carattere, posizione 3 partendo da 0 println(frase[3]); // uso del metodo replace var nuova=frase.replace("domani", "tra due giorni") println(nuova)
L’output generato dall’esempio sarà il seguente:
r Andremo tra due giorni al mare perchè oggi mia sorella non si sente bene...
Prima verrà stampato il carattere ‘r’, quarto della stringa, cui si è fatto accesso con l’espressione frase[3]: questa è una comodità molto interessante offerta da Kotlin, l’accesso diretto tramite indice ai caratteri della stringa. Subito dopo, abbiamo visto una dimostrazione del metodo replace in grado di sostituire una sottostringa con un’altra.
Altri metodi esistenti sono quelli finalizzati al recupero di porzioni di stringa, utilizzati nel seguente esempio con il supporto di trim che elimina eventuali spazi iniziali e finali:
// dall'inizio della stringa fino alla parola "perchè" println(frase.substringBefore("perchè").trim()) // dalla parola "perchè" alla fine della stringa println(frase.substringAfter("perchè").trim())
Questo l’output che ne deriva:
Andremo domani al mare oggi mia sorella non si sente bene...
La documentazione ufficiale offre tutte le informazioni necessarie sugli altri metodi disponibili per la classe String.
Le stringhe possono essere associate in array e, grazie a ciò iterate in sequenza. Vediamo un esempio che mostra una lista di nomi che verrà stampata accompagnando ogni elemento con il numero di caratteri che lo compongono:
val nomi:Array<String> = arrayOf("Emanuele", "Ugo", "Luca", "Silvio", "Enrico") for (s in nomi) println("${s} ha lunghezza ${s.length}")
Ecco il risultato:
Emanuele ha lunghezza 8 Ugo ha lunghezza 3 Luca ha lunghezza 4 Silvio ha lunghezza 6 Enrico ha lunghezza 6
Al prossimo tutorial… per continuare il nostro viaggio in Kotlin!
No Responses to “Stringhe in Kotlin”