Intern
Come espandere una stringa?
sobes.tech AI
Risposta dell'AI
- Iterazione con creazione di una nuova riga:
// Esempio di inversione di stringa
fun reverseString(str: String): String {
var reversed = ""
for (i in str.length - 1 downTo 0) {
reversed += str[i]
}
return reversed
}
- Uso di StringBuilder/StringBuffer:
// Esempio di inversione di stringa usando StringBuilder
fun reverseString(str: String): String {
return StringBuilder(str).reverse().toString()
}
- Uso di metodi di stringa (Kotlin):
// Esempio di inversione di stringa usando reversed()
fun reverseString(str: String): String {
return str.reversed()
}
- Ricorsione:
// Esempio di inversione ricorsiva di stringa
fun reverseString(str: String): String {
return if (str.isEmpty()) {
str
} else {
reverseString(str.substring(1)) + str[0]
}
}
La scelta del metodo dipende dai requisiti di prestazioni, leggibilità del codice e dalla necessità di supportare versioni più vecchie di Java (nel caso di utilizzo di StringBuilder/StringBuffer). Il metodo reversed() in Kotlin è il più conciso e preferito.