Menu
Coddy logo textTech

Szablony ciągów znaków

Część sekcji Podstawy ścieżki Kotlin w Coddy. Lekcja 36 z 93.

W tym kursie widziałeś już w praktyce szablony ciągów znaków: symbol $, który pozwala umieszczać zmienne bezpośrednio w ciągach znaków. Przyjrzyjmy się bliżej tej funkcji.

Szablony ciągów znaków umożliwiają wstawianie wartości zmiennych do ciągów znaków za pomocą prefiksu $:

fun main() {
    val name = "Alice"
    val age = 25
    println("My name is $name and I am $age years old.")
}
// Wynik: Mam na imię Alice i mam 25 lat.

W przypadku prostych nazw zmiennych po prostu użyj $variableName. Ale gdy musisz uwzględnić wyrażenia lub uzyskać dostęp do właściwości, ujmij je w nawiasy klamrowe:

fun main() {
    val price = 15
    val quantity = 3
    println("Total: ${price * quantity}")
    println("Next year I'll be ${25 + 1}")
}
// Wynik:
// Razem: 45
// W przyszłym roku będę mieć 26 lat

Nawiasy klamrowe informują Kotlin, aby obliczył wyrażenie wewnątrz przed wstawieniem go do ciągu znaków. Działa to z każdym prawidłowym wyrażeniem: działaniami arytmetycznymi, wywołaniami funkcji lub dostępem do właściwości.

Jeśli musisz wypisać rzeczywisty znak dolara, poprzedź go ukośnikiem odwrotnym:

fun main() {
    val price = 50
    println("The cost is \$$price")
}
// Wynik: The cost is $50
challenge icon

Wyzwanie

Łatwy

Napisz funkcję formatReceipt, która przyjmuje item, quantity i pricePerUnit, a następnie zwraca sformatowany wiersz paragonu.

Użyj szablonów tekstowych z prostym wstawianiem zmiennych ($variable) oraz obliczaniem wyrażeń (${expression}), aby utworzyć ciąg znaków paragonu.

Format: Zwrócony ciąg znaków powinien mieć dokładnie następujący wzór:

[item] x[quantity] = $[total]

Gdzie [total] jest wynikiem pomnożenia quantity przez pricePerUnit.

Parametry:

  • item (String): Nazwa produktu
  • quantity (Int): Liczba zakupionych produktów
  • pricePerUnit (Int): Cena jednej sztuki produktu

Zwraca: Sformatowany wiersz paragonu (String). Format: Apple x3 = $15

Spróbuj swoich sił

fun formatReceipt(item: String, quantity: Int, pricePerUnit: Int): String {
    // Wpisz kod tutaj
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Kotlin