Kotlin:
Interpolacja łańcuchów znaków
How to:
fun main() {
val name = "Ania"
val age = 25
val greeting = "Cześć, jestem $name i mam $age lat."
println(greeting) // Wyświetla: Cześć, jestem Ania i mam 25 lat.
// Można też wstawiać wyrażenia:
val farewell = "Za rok będę miał ${age + 1} lat."
println(farewell) // Wyświetla: Za rok będę miał 26 lat.
}
Deep Dive
Interpolację stringów wprowadzono, aby ułatwić razem pracę z tekstami. W przeszłości programiści musieli ręcznie sklejać stringi przy użyciu operatorów plus (+), co było nie tylko uciążliwe, ale i mogło prowadzić do błędów. W Kotlinie interpolacja używa znaku dolara ($) do identyfikowania zmiennych oraz wyrażeń w nawiasach klamrowych do obliczeń.
Alternatywą dla interpolacji jest użycie metody format
dostępnej w Javie i Kotlinie lub budowanie stringów przy pomocy klas StringBuilder
czy StringBuffer
. Te techniki są nadal używane tam, gdzie interpolacja jest niemożliwa lub niepraktyczna.
Implementacja interpolacji stringów w Kotlinie jest zoptymalizowana, aby minimalizować narzut związany z operacjami na stringach - kompilator zamienia interpolację na połączenie StringBuilder
i jego metod.
See Also
- Kotlin Documentation on String Templates
- Kotlin Playground - Interactive site to test Kotlin code snippets.