Interpolacja łańcuchów znaków
Część sekcji Logika i przepływ programu ścieżki Ruby w Coddy. Lekcja 2 z 56.
Ruby pozwala osadzać zmienne i wyrażenia bezpośrednio w ciągu znaków ujętym w podwójny cudzysłów za pomocą #{...}. Nazywa się to interpolacją ciągów znaków.
name = "Sam"
age = 30
puts "#{name} is #{age} years old." # Sam ma 30 lat.Wyrażenie wewnątrz #{...} może być dowolnym wyrażeniem, które Ruby oblicza:
price = 19.5
puts "Total: $#{price * 1.2}" # Razem: $23.4Interpolacja działa tylko w ciągach znaków ujętych w cudzysłowy podwójne. Apostrofy traktują #{...} jako zwykły tekst.
x = 5
puts "x is #{x}" # x to 5
puts 'x is #{x}' # x to #{x}Wyzwanie
PoczątkującyOdczytaj imię i wiek (dwa wiersze danych wejściowych). Wypisz jeden wiersz w formacie:
Hello, <name>! In 5 years you will be <age+5>.Dla danych wejściowych Alice, a następnie 30, wynik to:
Hello, Alice! In 5 years you will be 35.Spróbuj swoich sił
name = gets.chomp
age = gets.to_i
# TODO: użyj interpolacji łańcuchów, aby wyświetlić komunikat
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Logika i przepływ programu
1Łańcuchy znaków w szczegółach
Przegląd metod łańcuchów znakówInterpolacja łańcuchów znakówIterowanie po łańcuchach znakówDzielenie i łączeniePowtórka – Tkacz łańcuchów znaków4Bloki, procki i lambdy
Czym jest blok?do..end a nawiasy klamroweSłowo kluczowe yieldParametry blokuProcki i lambdyPodsumowanie — własny iterator7Hashe, część 2
Hash.new z wartościami domyślnymiIterowanie po haszachZagnieżdżone haszeŁączenie i przekształcaniePowtórka — licznik częstotliwości10Projekt – ewidencja uczniów
Przegląd projektuDodawanie ucznia5Potęga Enumerable
Select i RejectŁączenie wywołań mapReduce / Injectcount, all?, any?, none?group_by i partitionsort_by, min_by, max_byPodsumowanie — potok danych8Zaawansowane podejmowanie decyzji
case z klasami i wyrażeniami regularnymiwhen z wieloma wartościamiOperator trójargumentowyInline if / unlessPowtórka – klasyfikator ocenPoćwicz samodzielnie: Kompilator Ruby online