Cómo usar hashes ruby

Cómo usar hashes ruby
Hashes, también llamados matrices asociativas, mapas o diccionarios, son tipos de estructura de datos que almacenan datos como pares de valor clave.

Desde que hashes almacenan una colección de referencias de objetos, tienden a comportarse de manera similar a las matrices. Sin embargo, a diferencia de las matrices, Ruby Hashes usa cualquier tipo de objeto Ruby como índice, mientras que las matrices usan enteros.

Un hash Ruby tiene dos objetos: el índice, al que se referimos principalmente como una clave y el otro que representa el valor real. Tanto la clave como el valor de un hash pueden ser de cualquier tipo.

Cómo crear un hash rubí

Como se mencionó, los hashes siguen el formato de un diccionario donde una clave representa un valor. Un ejemplo sería una lista de nombres de usuario, cada uno apuntando a su dirección de correo electrónico respectiva.

Para crear un hash rubí, encienda los valores en un par de aparatos ortopédicos:

La sintaxis mencionada anteriormente crea un hash vacío sin pares de valor clave.

Para agregar datos al hash, podemos usar la flecha o la notación de colon. Por ejemplo, el siguiente código representa hashes de rubí válidos:

Shrek: "[email protected] ", Leoin:" [email protected] ", Tropicalne:" [email protected] "
# Notación de flecha
shrek => "[email protected] ", leoin =>" [email protected] ", Tropicalne =>" [email protected] "

Los dos formatos son válidos, y Ruby los interpretará como hashes de rubí válidos. Como notará, una coma separa cada par de valores clave en un hash.

Además de configurar un hash de la nada, puede asignar los valores a una variable como lo haría para un entero.

Por ejemplo:

user_db = shrek: "[email protected] ", Leoin:" [email protected] ", Tropicalne:" [email protected] "
Pone user_db

Otra forma de inicializar un hash vacío es usar la clase hash. Por ejemplo:

user_db = hash.nuevo

Una vez que tenga un hash vacío inicializado, puede asignar valores usando el = signo.

Por ejemplo:

user_db = hash.nuevo
user_db ["shrek"] = "[email protected] "
user_db ["Leoin"] = "[email protected] "
user_db ["Tropicalne"] = "[email protected] "
Pone user_db

En el ejemplo anterior, creamos un hash vacío y le asignamos valores más tarde.

Pasamos la tecla hash dentro de los soportes cuadrados y el valor de destino utilizando el operador de asignación.

Ejecución del código anterior debe proporcionar salida a todos los datos en el hash:

"shrek" => "[email protected] "," leoin "=>" [email protected] "," Tropicalne "=>" [email protected] "

Cómo buscar valores de matriz

Para obtener un valor en un hash, usamos un soporte cuadrado y pasamos la clave de destino:

Por ejemplo:

pone user_db ["shrek"]

Esto debería devolver el valor asociado con la clave en este caso, la dirección de correo electrónico:

[email protected]

Otra forma de obtener un valor dentro de un hash es usar el método de búsqueda. En este caso, pasamos la clave objetivo dentro de un par de paréntesis.

Por ejemplo:

Pone user_db.buscar ("shrek")

Varios métodos de hash rubí

Ahora, veamos algunos métodos hash que puede usar para manipular y trabajar con objetos hash en Ruby:

1. Unir

El primer método es el método de fusión. El método de fusión nos permite combinar dos o más hashes para crear un hash.

Supongamos que tenemos dos hashes de desarrolladores e ingenieros como:

desarrolladores = "Anne": "Python", "Liz": "Ruby on Rails", "Martin": "Java", "Peter": "C ++"
# ingeniería
Engineers = "Henry": "Ingeniero Químico", "Ruby": "Ingeniero Eléctrico", "Liam": "Ingeniero de Materiales"

Podemos combinar ambos hash para crear un hash de empleados como:

empleados = desarrolladores.fusionar (ingenieros)
Pone a los empleados

Esto creará un hash, con la clave y los valores de ambos hashes combinados:

: Anne => "Python" ,: liz => "Ruby on Rails" ,: Martin => "Java" ,: Peter => "C ++" ,: Henry => "Chemical Engineer" ,: Ruby => "Electrical Ingeniero ",: liam =>" ingeniero de materiales "

2. Clasificar

Supongamos que queremos ordenar los valores en un hash. Podemos hacer esto utilizando el método de clasificación. Clasifica automáticamente los valores en orden ascendente.

Aquí hay un ejemplo:

desarrolladores = a: "Python", X: "Ruby on Rails", D: "Java", C: "C ++"
Pone a los desarrolladores.clasificar

3. Llaves

Además, Ruby proporciona el método de llaves que le permite poner las llaves disponibles en un hash. Por ejemplo:

desarrolladores = a: "Python", X: "Ruby on Rails", D: "Java", C: "C ++"
Pone a los desarrolladores.llaves

El ejemplo anterior solo devolverá las claves del diccionario y no hay valores:

a
X
d
C

4. Valores

Si desea obtener solo los valores en el hash, puede usar el método hash como:

desarrolladores = a: "Python", X: "Ruby on Rails", D: "Java", C: "C ++"
Pone a los desarrolladores.valores

El resultado es solo un conjunto de valores en el diccionario en el orden en que aparecen:

Pitón
Ruby on Rails
Java
C++

Conclusión

Este artículo fue un tutorial rápido sobre cómo trabajar con hashes en Ruby. En esto, discutimos cómo declarar un hash, agregar valores, obtener valores de obtención y varios métodos que puede usar para interactuar con los hashes.