Hashes erstellen
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy. Lektion 73 von 88.
Arrays sind hervorragend geeignet, um geordnete Listen zu speichern, aber manchmal müssen Sie Werte mit spezifischen Bezeichnungen anstatt mit numerischen Indizes verknüpfen. Ein Hash speichert Daten als Schlüssel-Wert-Paare, wobei jeder Schlüssel auf einen entsprechenden Wert zeigt.
Um einen Hash zu erstellen, verwende geschweifte Klammern mit Schlüsseln und Werten, die durch => (als Hash-Rakete bezeichnet) getrennt sind:
person = {"name" => "Alice", "age" => 25, "city" => "Paris"}
puts person # Ausgabe: {"name"=>"Alice", "age"=>25, "city"=>"Paris"}Jeder Schlüssel muss innerhalb des Hashs eindeutig sein, aber Werte können sich wiederholen. Schlüssel und Werte können beliebige Datentypen sein, einschließlich Strings, Zahlen oder sogar Arrays.
Sie können auch einen leeren Hash erstellen und später Paare hinzufügen:
scores = {}
puts scores # Ausgabe: {}Hashes sind perfekt dafür geeignet, reale Objekte mit benannten Attributen darzustellen, wie zum Beispiel ein Produkt mit einem Namen und einem Preis oder einen Benutzer mit einer E-Mail-Adresse und einem Passwort. Im Gegensatz zu Arrays, bei denen man sich Positionen merken muss, ermöglichen es Hashes, aussagekräftige Namen zur Organisation Ihrer Daten zu verwenden.
Aufgabe
EinfachLies drei Eingabezeilen ein:
- Einen Buchtitel (String)
- Einen Autorennamen (String)
- Ein Veröffentlichungsjahr (Integer)
Erstelle einen Hash namens book mit drei Schlüssel-Wert-Paaren mithilfe der Hash-Rocket-Syntax (=>):
"title"wird dem Buchtitel zugeordnet"author"wird dem Autorennamen zugeordnet"year"wird dem Veröffentlichungsjahr (als Integer) zugeordnet
Gib den Hash mit puts aus.
Wenn die Eingaben beispielsweise Ruby Basics, Jane Smith und 2023 sind, sollte die Ausgabe wie folgt aussehen:
{"title"=>"Ruby Basics", "author"=>"Jane Smith", "year"=>2023}Wenn die Eingaben The Great Gatsby, F. Scott Fitzgerald und 1925 sind, sollte die Ausgabe wie folgt aussehen:
{"title"=>"The Great Gatsby", "author"=>"F. Scott Fitzgerald", "year"=>1925}Wenn die Eingaben 1984, George Orwell und 1949 sind, sollte die Ausgabe wie folgt aussehen:
{"title"=>"1984", "author"=>"George Orwell", "year"=>1949}Probier es selbst
# Eingabe lesen
title = gets.chomp
author = gets.chomp
year = gets.to_i
# TODO: Erstelle ein Hash namens 'book' mit drei Schlüssel-Wert-Paaren unter Verwendung der Hash-Rocket-Syntax (=>)
# Schlüssel sollten sein: "title", "author", "year"
# Den Hash ausgeben
puts bookDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 47Rechner zum Aufteilen der Rechnung
WillkommensnachrichtBenutzereingaben erfassen10FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array-Slicing mit BereichenArray-Slicing mit IndizesArray-OperatorenInclude?-Methode2Variablen und Datentypen
Zahlen und VariablenString-DatentypBoolean-DatentypSymbol-DatentypDatentypen überprüfenNamenskonventionenWiederholung – Variablen erstellen5Entscheidungsfindung
If-AnweisungIf - ElseRückblick – Einfacher TaschenrechnerVerschachteltes If - ElseUnless-Anweisung8Schleifen
For-Schleife mit BereichenWhile-SchleifeBreakNextRückblick – FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick – Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische KurzschreibweisenRückblick – Einfache MathematikVergleichsoperatoren6Grundlegende Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsDie chomp-MethodeTypumwandlungWiederholung – AltersrechnerWiederholung – Wahr oder FalschÜbe selbstständig: Online-Ruby-Compiler