0Pricing
Kotlin Academy · Lekcja

Szablony napisów: $variable i ${expression}

Umieszczanie zmiennych i wyrażeń w napisach za pomocą składni szablonów

Szablony napisów: $variable i ${expression} to bezpłatna lekcja Kotlin Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Kotlin Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Kotlin Academy zawiera 4 lekcji w sumie.

Czym są szablony ciągów znaków?

Szablony ciągów znaków pozwalają bezpośrednio osadzać wartości w ciągu, używając $ dla prostych zmiennych oraz ${...} dla pełnych wyrażeń.

Osadzanie zmiennej

Wewnątrz ciągu znaków poprzedź nazwę zmiennej symbolem $. Kotlin zastąpi ją wartością zmiennej w czasie działania programu.

fun main() {
    val name = "Ada"
    println("Hello, $name!") // Hello, Ada!
}

Wiele zmiennych

Możesz osadzić tyle zmiennych, ile potrzebujesz. Każde wystąpienie $name jest zastępowane niezależnie.

fun main() {
    val first = "Marie"
    val last = "Curie"
    val year = 1903
    println("$first $last won Nobel in $year")
}

Wyrażenia z użyciem ${...}

W przypadku wszystkiego, co wykracza poza pojedynczy identyfikator — działań arytmetycznych, wywołań metod czy dostępu do właściwości — użyj ${expression}.

fun main() {
    val a = 10
    val b = 5
    println("Sum: ${a + b}")
    println("Product: ${a * b}")
}

Wywoływanie metod w szablonach

Szablony mogą wywoływać funkcje i właściwości. Działa w nich wszystko, co zwraca wartość.

fun main() {
    val word = "kotlin"
    println("Length: ${word.length}")
    println("Upper: ${word.uppercase()}")
}

Wyrażenia warunkowe

W Kotlinie if jest wyrażeniem, dlatego można osadzić je bezpośrednio w szablonie.

fun main() {
    val score = 75
    println("Result: ${if (score >= 60) "pass" else "fail"}")
}

Escapowanie znaku dolara

Jeśli potrzebujesz dosłownego znaku $, poprzedź go ukośnikiem odwrotnym: \$.

fun main() {
    val price = 19
    println("Cost: \$$price") // Cost: $19
}

Zagnieżdżone szablony

Wewnątrz ${...} można zagnieżdżać szablony ciągów znaków, choć głęboko zagnieżdżone ciągi stają się trudne do odczytania.

fun main() {
    val items = listOf("apple", "banana")
    println("List: ${items.joinToString { "[$it]" }}")
}

Szablony z kolekcjami

Łącz szablony z operacjami na kolekcjach, aby zwięźle formatować dane wyjściowe.

fun main() {
    val numbers = listOf(1, 2, 3, 4, 5)
    println("Sum of ${numbers.size} numbers: ${numbers.sum()}")
}

Szablony i konwersja typów

W szablonach można używać dowolnego typu z odpowiednio zdefiniowaną funkcją toString() — wartości logicznych, liczb i własnych klas.

data class Point(val x: Int, val y: Int)
fun main() {
    val p = Point(3, 4)
    println("Point: $p") // uses Point.toString()
    println("X coord: ${p.x}")
}

Uwaga dotycząca wydajności

Kompilator Kotlina zamienia szablony ciągów znaków na wywołania StringBuilder, podobnie jak w przypadku ręcznego konkatenowania — zazwyczaj nie ma różnicy w wydajności. Ze względu na czytelność preferuj szablony.

fun main() {
    val n = 42
    val a = "Value is $n"       // template
    val b = "Value is " + n      // concatenation
    println(a == b) // true
}

Szybkie sprawdzenie

Która składnia szablonu poprawnie osadza wynik wyrażenia x + 1?

Podsumowanie

Używaj $variable dla prostych identyfikatorów oraz ${expression} dla bardziej złożonych wyrażeń. Dosłowne znaki dolara zapisuj jako \$. Szablony są kompilowane do wydajnego kodu wykorzystującego StringBuilder.

Często zadawane pytania

Czy lekcja „Szablony napisów: $variable i ${expression}” jest bezpłatna?

Tak — pełny tekst „Szablony napisów: $variable i ${expression}” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Kotlin Academy, przejdź na CoddyKit PRO. Kurs Kotlin Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Szablony napisów: $variable i ${expression}”?

Umieszczanie zmiennych i wyrażeń w napisach za pomocą składni szablonów Ćwiczysz Kotlin Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Kotlin Academy?

Nie wymagamy żadnego doświadczenia. Kotlin Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „Szablony napisów: $variable i ${expression}”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Kotlin Academy?

Tak. Każda lekcja Kotlin Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Podstawy napisów: literały, sekwencje ucieczki i długość
  2. Szablony napisów: $variable i ${expression}
  3. Surowe ciągi znaków i potrójne cudzysłowy
  4. Najważniejsze funkcje String: trim, split, replace, contains
← Powrót do Kotlin Academy