ruby-uebungen/Assignment_022
Thomas Smits fe2c1c6eb6 Update of exercises 2023-05-25 17:47:19 +02:00
..
solution Update of exercises 2023-05-25 17:47:19 +02:00
readme.md Update of exercises 2023-05-25 17:47:19 +02:00

readme.md

Hashes und Blöcke

📆 Fällig: ---- 📆 Musterlösung

Realisieren Sie einen einfachen Cache mit Hilfe von Hashes. Schreiben Sie hierzu eine Klasse Cache.

Die Klasse Cache hat eine Methode zum Hinzufügen von Elementen (add) und eine zum Auslesen ([]), wobei jeweils ein String als Schlüssel verwendet wird.

Wenn ein Element nicht enthalten sein sollte, liefert die Methode [] nicht nil zurück, sondern ruft einen Block auf, der im Konstruktor der Klasse übergeben wurde. Diese Block beschafft die Daten und gibt sie zurück.

Eine beispielhafte Benutzung sähe dann wie folgt aus:

c = Cache.new { |key| "Neuer Wert für key #{key}" }
c.add 'key1', 'value1'
c.add 'key2', 'value2'
puts c['key1'] # -> 'value1'
puts c['key3'] # -> 'Neuer Wert'