Menu
CoddyTech

Hashes erstellen

Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy. Lektion 73 von 88.

Arrays eignen sich hervorragend zum Speichern geordneter Listen, aber manchmal musst du Werte bestimmten Bezeichnungen statt numerischen Indizes zuordnen. Ein Hash speichert Daten als Schlüssel-Wert-Paare, wobei jeder Schlüssel auf einen entsprechenden Wert verweist.

Um einen Hash zu erstellen, verwende geschweifte Klammern mit Schlüsseln und Werten, die durch => getrennt sind (genannt Hash Rocket):

person = {"name" => "Alice", "age" => 25, "city" => "Paris"}

puts person  # Gibt aus: {"name"=>"Alice", "age"=>25, "city"=>"Paris"}

Jeder Schlüssel muss innerhalb des Hashes eindeutig sein, Werte können sich jedoch wiederholen. Schlüssel und Werte können jeden Datentyp haben, einschließlich Zeichenfolgen, Zahlen oder sogar Arrays.

Du kannst auch einen leeren Hash erstellen und später Paare hinzufügen:

scores = {}

puts scores  # Gibt aus: {}

Hashes eignen sich perfekt, um reale Objekte mit benannten Attributen darzustellen, etwa ein Produkt mit einem Namen und einem Preis oder einen Benutzer mit einer E-Mail-Adresse und einem Passwort. Anders als bei Arrays, bei denen du dir Positionen merken musst, kannst du mit Hashes aussagekräftige Namen verwenden, um deine Daten zu organisieren.

challenge icon

Aufgabe

Einfach

Lies drei Eingabezeilen ein:

  1. Einen Buchtitel (Zeichenkette)
  2. Den Namen eines Autors (Zeichenkette)
  3. Das Erscheinungsjahr (Ganzzahl)

Erstelle einen Hash namens book mit drei Schlüssel-Wert-Paaren und verwende dabei die Hash-Rocket-Syntax (=>):

  • "title" dem Buchtitel zuordnen
  • "author" dem Namen des Autors zuordnen
  • "year" dem Erscheinungsjahr zuordnen (als Ganzzahl)

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 einlesen
title = gets.chomp
author = gets.chomp
year = gets.to_i

# TODO: Einen Hash namens 'book' mit drei Schlüssel-Wert-Paaren in der Hash-Rocket-Syntax (=>) erstellen
# Die Schlüssel sollen "title", "author" und "year" sein


# Den Hash ausgeben
puts book
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-Ruby-Compiler