Kotlin:
Concatenazione di stringhe
How to:
Concatenare con l’operatore +
:
val saluto = "Ciao"
val nome = "Marco"
val messaggio = saluto + ", " + nome + "!"
println(messaggio) // Output: Ciao, Marco!
Usare concat
:
val stringa1 = "Kotlin "
val stringa2 = "è fico."
val risultato = stringa1.concat(stringa2)
println(risultato) // Output: Kotlin è fico.
Interpolazione di stringhe con $
:
val animale = "gatto"
val eta = 3
val frase = "Il mio $animale ha $eta anni."
println(frase) // Output: Il mio gatto ha 3 anni.
Usare StringBuilder
:
val builder = StringBuilder()
builder.append("Kotlin")
builder.append(" è")
builder.append(" versatile!")
println(builder.toString()) // Output: Kotlin è versatile!
Deep Dive
Concatenare stringhe è basilare nella programmazione, usato fin dagli albori del software. In Kotlin, l’operatore +
è semplice ma può essere subottimale per la memoria se usato in loop intensivi a causa dell’allocazione di nuovi oggetti stringa. L’interpolazione di stringhe è più leggibile e performante, specialmente con vars e expressions all’interno delle stringhe. StringBuilder
è utile quando c’è da costruire una stringa in molti passaggi o in cicli, riducendo il sovraccarico di memoria.
In Java, concatenare con operatore +
si traduce in una conversione implicita a StringBuilder
, ma in Kotlin questo avviene solo dentro a loop, non per semplici espressioni concatenate. Alternative come joinToString
o format
, meno usate, permettono un controllo più fine su formattazione e localizzazione.
See Also
- Kotlin
StringBuilder
documentation: StringBuilder - Discussion on string performance: “Kotlin String Interpolation” on Stack Overflow