Avatar ·

Como concatenar strings corretamente em Kotlin? Comparação de métodos e melhores práticas

Olá a todos! Comecei a estudar Kotlin recentemente e me deparei com o problema de concatenar strings. Em Java, eu costumava usar o operador "+" ou StringBuilder para casos complexos. Mas em Kotlin, vejo várias maneiras e não entendo qual é a correta e eficiente. Por exemplo, tenho o código: ```kotlin val firstName = "Иван" val lastName = "Петров" val age = 30 // Método 1: operador + val message1 = "Привет, " + firstName + " " + lastName + "! Тебе " + age + " лет." // Método 2: string templates val message2 = "Привет, $firstName $lastName! Тебе $age лет." // Método 3: StringBuilder val sb = StringBuilder() sb.append("Привет, ") sb.append(firstName) sb.append(" ") sb.append(lastName) sb.append("! Тебе ") sb.append(age) sb.append(" лет.") val message3 = sb.toString() ``` Todos os três métodos funcionam, mas: 1. Qual deles é considerado idiomático para Kotlin? 2. Existe diferença de performance? 3. Quando devo usar cada abordagem? 4. E sobre concate