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 latNawiasy 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 $50Wyzwanie
ŁatwyNapisz 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 produktuquantity(Int): Liczba zakupionych produktówpricePerUnit(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
}
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory – część 1
Operatory arytmetyczneOperator moduloPrzypisanie z operatoremOperatory porównaniaPowtórka – proste działania matematyczne7Podstawowe wejście/wyjście
Funkcja printlnSzablony ciągów znakówWczytywanie danych przez ReadLineKonwersja typówPowtórka — lata do emeryturyPowtórka — prawda czy fałsz10Funkcje
Deklarowanie funkcjiParametry i argumentyWartości zwracaneArgumenty nazwaneWartości domyślneFunkcje z pojedynczym wyrażeniemPowtórka – funkcja SigmaPowtórka – funkcja walidująca2Zmienne
Val a VarWnioskowanie o typieLiczbyŁańcuch znakówWartość logicznaKonwencje nazewnictwaPowtórzenie – inicjalizacja zmiennych5Operatory, część 2
Operatory logiczne, część 1Operatory logiczne, część 2Operatory logiczne, część 3Operator trójargumentowy z wyrażeniem ifPowtórka — prosta logika8Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych11FizzBuzz z niespodzianką
Omówienie gryFunkcja FizzBuzz3Obsługa wartości null
Czym jest bezpieczeństwo nullTypy dopuszczające nullOperator bezpiecznego wywołaniaOperator ElvisPodstawy wyzwania z funkcjamiAsercja wartości niebędącej nullPodsumowanie — bezpieczny dostęp6Podejmowanie decyzji
Instrukcja ifIf - elseIf jako wyrażenieWyrażenie whenWhen z zakresamiPowtórka — prosty kalkulator9Pętle
Pętla forPętla whilePętla do-whileBreakContinueZakresy w pętlachPętla zagnieżdżonaPowtórka – silniaPowtórka – dynamiczne wprowadzanie danychPoćwicz samodzielnie: Edytor online Kotlin