Convertir Array a Hash en Ruby
Stewart Nguyen
21 junio 2023
-
Utilice
Array.to_h
para convertir matriz a hash en Ruby -
Use
Hash::[]
para convertir matriz a hash en Ruby
Este artículo discutirá brevemente la solución para convertir la siguiente matriz:
['key1', 'value1', 'key2', 'value2']
en un hash con el siguiente formato:
{ 'key1' => 'value1', 'key2' => 'value2' }
Utilice Array.to_h
para convertir matriz a hash en Ruby
Ruby versión 2.1.10 introdujo un nuevo método, to_h
en la matriz, que interpreta una matriz de 2 elementos en un hash.
Código:
[['key1', 'value1'], ['key2', 'value2']].to_h
Primero necesitamos convertir nuestra matriz original en una matriz de 2 elementos.
Código:
['key1', 'value1', 'key2', 'value2'].each_slice(2).to_a
Producción :
[["key1", "value1"], ["key2", "value2"]]
Combina todo con la versión de 1 línea.
Código:
['key1', 'value1', 'key2', 'value2'].each_slice(2).to_a.to_h
Producción :
{ "key1"=>"value1", "key2"=>"value2" }
Use Hash::[]
para convertir matriz a hash en Ruby
Hash::[]
acepta una lista de argumentos. El número de esta lista debe ser par, o se generará un error.
Hash::[]
convierte la lista en un hash, donde los argumentos impares serán las claves, y los argumentos pares serán los valores.
Código:
Hash['key1', 'value1', 'key2', 'value2']
Producción :
{"key1"=>"value1", "key2"=>"value2"}