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, verwenden Sie geschweifte Klammern mit Schlüsseln und Werten, die durch => (genannt Hash-Rocket) 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 Zeilen der Eingabe ein:
- Ein Buchtitel (String)
- Ein Autorenname (String)
- Ein Erscheinungsjahr (Integer)
Erstelle einen Hash namens book mit drei Schlüssel-Wert-Paaren unter Verwendung der Hash-Rocket-Syntax (=>):
"title"zugeordnet dem Buchtitel"author"zugeordnet dem Autorennamen"year"zugeordnet dem Erscheinungsjahr (als Integer)
Gib den Hash mit puts aus.
Wenn die Eingaben zum Beispiel 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}Spickzettel
Ein Hash speichert Daten als Schlüssel-Wert-Paare, wobei jeder Schlüssel auf einen entsprechenden Wert zeigt.
Um einen Hash zu erstellen, verwenden Sie geschweifte Klammern, wobei Schlüssel und Werte durch => (Hash-Rocket) getrennt werden:
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 Arrays.
Sie können einen leeren Hash erstellen:
scores = {}
puts scores # Ausgabe: {}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 47Rechnungs-Splitter
WillkommensnachrichtBenutzereingaben abfragen10FizzBuzz mit Twist
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array Slicing mit BereichenArray Slicing mit IndizesArray-OperatorenInclude? Methode2Variablen und Datentypen
Zahlen und VariablenDatentyp StringDatentyp BooleanDatentyp SymbolDatentypen prüfenBenennungskonventionenZusammenfassung – Erstellung von Variablen5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachtelte If - Else-AnweisungenUnless-Anweisung8Schleifen
For-Schleife mit RangesWhile-SchleifeBreakNextRückblick - FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenWiederholung – Einfache MathematikVergleichsoperatoren6Grundlagen Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsChomp-MethodeTypumwandlungWiederholung - AltersrechnerWiederholung - Wahr oder Falsch