Interpolatory s, f i raw
Umieści Pan/Pani wartości w napisach.
Interpolatory s, f i raw to bezpłatna lekcja Scala for Backend Engineering & Functional Programming 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 Scala for Backend Engineering & Functional Programming, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Scala for Backend Engineering & Functional Programming zawiera 4 lekcji w sumie.
Czym jest interpolacja?
Interpolacja stringów pozwala bezpośrednio osadzać wartości w literałach tekstowych.
Zamiast łączyć fragmenty za pomocą +, umieszczasz przed cudzysłowem literę będącą prefiksem, a następnie odwołujesz się wewnątrz do zmiennych. Scala ma trzy wbudowane interpolatory: s, f i raw.
val name = "Ada"
println(s"Hello, $name!")Interpolator s
Interpolator s jest najczęściej używany. Umieść s przed otwierającym cudzysłowem, a następnie użyj $variable, aby wstawić wartość.
Jest to czytelniejsze niż konkatenacja za pomocą +.
val count = 3
println(s"You have $count messages")Wyrażenia w nawiasach klamrowych
W przypadku czegoś więcej niż prosta zmienna umieść wyrażenie w ${ }.
Pozwala to wykonywać obliczenia lub wywoływać metody bezpośrednio wewnątrz stringa.
val a = 4
val b = 5
println(s"Sum is ${a + b}")
println(s"Upper: ${"hi".toUpperCase}")Uruchamialny przykład z s
Oto kompletny program używający interpolatora s do zbudowania powitania.
Zwróć uwagę, jak schludnie zmienne są wstawiane do zdania.
object Main extends App {
val user = "Sam"
val items = 2
println(s"Hi $user, you bought $items items.")
}Escapowanie znaku dolara
W interpolowanym stringu $ ma specjalne znaczenie. Aby wypisać dosłowny znak dolara, zapisz $$.
Przydaje się to podczas formatowania cen lub walut.
val price = 9
println(s"Total: $$$price")Interpolator f
Interpolator f dodaje formatowanie w stylu printf. Po zmiennej umieść specyfikator formatu, taki jak %d dla liczb całkowitych lub %s dla stringów.
Świetnie nadaje się do kontrolowania precyzji i wyrównania liczb.
val n = 42
println(f"Value: $n%d")
val label = "Pi"
println(f"$label%s")Formatowanie liczb dziesiętnych
Użyj %f wraz z precyzją, aby kontrolować liczbę miejsc po przecinku. Na przykład %.2f pokazuje dwie cyfry po kropce.
To idealne rozwiązanie dla kwot pieniężnych lub pomiarów.
val pi = 3.14159
println(f"Pi is $pi%.2f")
val ratio = 0.5
println(f"Ratio: $ratio%.1f")Szerokość i dopełnianie za pomocą f
Interpolator f może również dopełniać liczby do określonej szerokości. %5d wyrównuje liczbę całkowitą do prawej w polu o szerokości pięciu znaków.
Pomaga to wyrównywać kolumny danych wyjściowych.
val x = 7
println(f"[$x%5d]")
println(f"[$x%-5d]")Interpolator raw
Interpolator raw działa podobnie jak s, ale nie przetwarza sekwencji ucieczki.
Dlatego \n pozostaje dwoma znakami: odwrotnym ukośnikiem i literą n, zamiast stać się nowym wierszem.
println(raw"Path: C:\new\test")
println(s"Path: C:\new\test")Wybór właściwego interpolatora
Użyj s do codziennego wstawiania wartości. Użyj f, gdy potrzebujesz formatowania liczb. Użyj raw, gdy chcesz zachować odwrotne ukośniki dosłownie, na przykład w ścieżkach plików lub wyrażeniach regularnych.
Wszystkie trzy interpolatory nadal obsługują $variable i ${expression}.
val v = 1.0
println(s"s: $v")
println(f"f: $v%.2f")
println(raw"raw: $v\n")Wiele wartości naraz
W jednym interpolowanym stringu można połączyć wiele zmiennych i wyrażeń.
Dzięki temu kod generujący dane wyjściowe jest zwięzły i czytelny w porównaniu z długimi łańcuchami operatora +.
object Main extends App {
val item = "Coffee"
val qty = 2
val cost = 4.5
println(f"$qty x $item = $$${qty * cost}%.2f")
}Szybkie sprawdzenie
Który interpolator zachowuje sekwencje ucieczki dosłownie?
Podsumowanie
Poznałeś trzy interpolatory Scali. s wstawia wartości za pomocą $var i ${expr}.
f dodaje formatowanie w stylu printf, na przykład %.2f i %5d. raw działa jak s, ale zachowuje sekwencje ucieczki dosłownie. Użyj $$, aby wypisać rzeczywisty znak dolara.
Ucz się Scala dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 39
- Lekcje
- 143
Często zadawane pytania
Czy lekcja „Interpolatory s, f i raw” jest bezpłatna?
Tak — pełny tekst „Interpolatory s, f i raw” 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 Scala for Backend Engineering & Functional Programming, przejdź na CoddyKit PRO. Kurs Scala for Backend Engineering & Functional Programming zawiera 4 lekcji w sumie.
Co nauczysz się w „Interpolatory s, f i raw”?
Umieści Pan/Pani wartości w napisach. Ćwiczysz Scala for Backend Engineering & Functional Programming 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ąć Scala for Backend Engineering & Functional Programming?
Nie wymagamy żadnego doświadczenia. Scala for Backend Engineering & Functional Programming 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 „Interpolatory s, f i raw”?
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 Scala for Backend Engineering & Functional Programming?
Tak. Każda lekcja Scala for Backend Engineering & Functional Programming 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
- Podstawy napisów
- Interpolatory s, f i raw
- Typowe metody napisów
- Napisy wielowierszowe