Scala for Backend Engineering & Functional Programming · Lekcja

Interpolatory s, f i raw

Umieści Pan/Pani wartości w napisach.

Lekcja 2 z 413 kroki

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.

Bezpłatny start

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

  1. Podstawy napisów
  2. Interpolatory s, f i raw
  3. Typowe metody napisów
  4. Napisy wielowierszowe
← Powrót do Scala for Backend Engineering & Functional Programming