Konvertieren Sie das Array in Hash Ruby

Konvertieren Sie das Array in Hash Ruby
Sowohl Arrays als auch Wörterbücher teilen in allen wichtigen Programmiersprachen ein gemeinsames Merkmal: Sie sind sowohl flexible als auch skalierbare Datenstrukturen, die dazu beitragen.

In bestimmten Fällen erscheint die Notwendigkeit, ein Array in einen Hash umzuwandeln und umgekehrt. In diesem Leitfaden werden wir diskutieren, wie Sie ein Array in Ruby in einen Hash umwandeln können.

#1 - Verwenden Sie jede Methode

Angenommen, Sie haben ein Array, das Sie in eine Zeichenfolge konvertieren möchten, in der der Schlüssel des Hash das Array -Element ist, und der Wert des Hashs ist das Element des Arrays + 10.

Dazu können wir jede Methode verwenden, um jedes Element im Array zu iterieren und sie in eine Zeichenfolge umzuwandeln.

var = [1,2,3,4,5,6,7,8,9,10]
my_hash =
var.jeweils tun | i |
my_hash [i] = i+10
Ende
setzt my_hash

Das obige Beispiel konvertiert jedes Element im Array in eine Hash -Taste, die mit seinem Wert gepaart ist.

Das resultierende Wörterbuch ist wie gezeigt:

1 => 11, 2 => 12, 3 => 13, 4 => 14, 5 => 15, 6 => 16, 7 => 17, 8 => 18, 9 => 19, 10 => 20

#2 - Verwenden Sie ENHER_WITH_OBJECT

Ruby liefert eine andere Methode namens tel_with_object. Die Methode führt nach dem Erstellen eines neuen Objekts aus den Array -Elementen die einzelnen Methode aus.

Beispiel:

var = [1,2,3,4,5,6,7,8,9,10]
var.ENGE_WITH_OBJECT () do | i, my_hash |
my_hash [i] = i+10
Ende

Die Funktionalität des obigen Beispiels ähnelt der Verwendung jeder Methode.

Der resultierende Hash -Wert lautet wie:

1 => 11, 2 => 12, 3 => 13, 4 => 14, 5 => 15, 6 => 16, 7 => 17, 8 => 18, 9 => 19, 10 => 20

Um zu sehen, wie die Funktion über die Elemente im Array iteriert und sie in einen Hash umwandelt, können Sie ein Put -Element in den Block hinzufügen:

var = [1,2,3,4,5,6,7,8,9,10]
var.ENGE_WITH_OBJECT () do | i, my_hash |
my_hash [i] = i+10
setzt my_hash
Ende

Wenn Sie den obigen Code ausführen, sollten Sie eine hierarchische Sicht auf den Hash -Erstellungsprozess erhalten.

#3 - Verwenden der TO_H -Methode

Die TO_H -Methode ist in der Array -Klasse definiert. Es arbeitet daran, ein Array in Form von Schlüsselwertpaaren in einen Hash umzuwandeln.

Beispiel:

var = [[1,2], [3,4], [5,6]]
stellt var.to_h

Die Methode wandelt jedes verschachtelte Array in Schlüsselwertpaare um.

1 => 2, 3 => 4, 5 => 6

Die Methode akzeptiert auch einen Block. Wenn ein Block angegeben ist, gibt die Methode das Ergebnis des Blocks in jedem Array -Element zurück.

Beispielsweise ist die folgende Methode, die zeigt, ob der Wert wahr oder falsch ist.

var = [1,2]
stellt var.to_h | i | [ich.selbst?, ich]

Das resultierende Wörterbuch:

false => 1, true => 2

Abschließend

In diesem Handbuch diskutierten wir, wie ein Array mit verschiedenen Methoden in einen Hash konvertiert werden kann.