String-Interpolation
Teil des Abschnitts Logik & Programmfluss der Ruby-Journey von Coddy — Lektion 2 von 56.
Ruby ermöglicht es Ihnen, Variablen und Ausdrücke direkt in eine Zeichenkette mit doppelten Anführungszeichen mit #{...} einzubetten. Dies wird als String-Interpolation bezeichnet.
name = "Sam"
age = 30
puts "#{name} is #{age} years old." # Sam ist 30 Jahre alt.Der Ausdruck innerhalb von #{...} kann alles sein, was Ruby auswertet:
price = 19.5
puts "Total: $#{price * 1.2}" # Gesamt: $23.4Interpolation funktioniert nur in doppelt angeführten Strings. Einfache Anführungszeichen behandeln #{...} als einfachen Text.
x = 5
puts "x is #{x}" # x is 5
puts 'x is #{x}' # x is #{x}Aufgabe
AnfängerLies einen Namen und ein Alter ein (zwei Zeilen Eingabe). Gib eine Zeile in folgendem Format aus:
Hello, <name>! In 5 years you will be <age+5>.Für die Eingabe Alice und dann 30 ist die Ausgabe:
Hello, Alice! In 5 years you will be 35.Spickzettel
String-Interpolation bettet Variablen/Ausdrücke in doppelt angeführte Strings ein, unter Verwendung von #{...}:
name = "Sam"
age = 30
puts "#{name} is #{age} years old." # Sam ist 30 Jahre alt.
puts "Total: $#{19.5 * 1.2}" # Gesamt: $23.4Einfache Anführungszeichen behandeln #{...} als reinen Text — Interpolation funktioniert nur mit doppelten Anführungszeichen.
Probier es selbst
name = gets.chomp
age = gets.to_i
# TODO: String-Interpolation verwenden, um die Nachricht auszugeben
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik & Programmfluss
1Strings im Detail
String-Methoden im ÜberblickString-InterpolationIterieren über StringsSplit und JoinRückblick – String Weaver4Blöcke, Procs & Lambdas
Was ist ein Block?do..end vs. geschweifte KlammernDas yield-SchlüsselwortBlock-ParameterProcs und LambdasZusammenfassung – Eigener Iterator7Hashes Teil 2
Hash.new mit StandardwertenIterieren über HashesVerschachtelte HashesZusammenführen und TransformierenRückblick – Häufigkeitszähler10Projekt - Studentenverwaltung
ProjektübersichtStudent hinzufügen5Enumerable-Kraftpaket
Select und RejectMap-VerkettungReduce / Injectcount, all?, any?, none?group_by und partitionsort_by, min_by, max_byZusammenfassung – Data Pipeline8Fortgeschrittene Entscheidungslogik
Case mit Klassen & RegexMulti-Value whenTernärer OperatorInline if / unlessRückblick – Noten-Klassifizierer