¿Cuál es la diferencia entre matrices y hashes en Ruby?¿Cuál es la diferencia entre matrices y hash?
Respuesta
De Rubí-Doc:
Arrays están ordenados, colecciones enteros indexados de cualquier objeto. La indexación de matrices comienza en 0, como en C o Java. Se supone que un índice negativo es relativo al final de la matriz, es decir, un índice de -1 indica el último elemento de la matriz, -2 es el penúltimo elemento de la matriz, y así sucesivamente. Mire here para más.
A Hash es una colección de pares clave-valor. Es similar a una matriz, excepto que la indexación se realiza mediante claves arbitrarias de cualquier tipo de objeto, no como un índice entero. Los hashes enumeran sus valores en el orden en que se insertaron las claves correspondientes.
Los valores hash tienen un valor predeterminado que se devuelve al acceder a claves que no existen en el hash. Por defecto, ese valor es nulo. Mire here para más.
Una matriz es una lista ordenada de cosas: a, b, c, d
Un hash es una colección de pares clave/valor: john tiene un Peugeot, Bob tiene un Renault, Adam tiene un vado.
Arrays: Las matrices se utilizan para almacenar colecciones de datos. Cada objeto en una matriz tiene una clave única asignada a ella. Podemos acceder a cualquier objeto en la matriz usando esta clave única. Las posiciones en una matriz comienzan desde "0". El primer elemento se encuentra en "0", el segundo en la 1ª posición, etc.
Ejemplo: Pruebe lo siguiente en - irb.
bikes = Array.new
bikes = %w[Bajaj-Pulsar, Honda-Unicorn, TVS-Apache, Yamaha, Suzuki]
Agregaste 4 elementos en la matriz.
puts bikes[3]
Yamaha,
Añadir un nuevo elemento a la posición 5.
bikes[5] = "Hardly Davidson"
hashes: Al igual que los arrays, hashes también se utilizan para almacenar datos. Hashes apunta un objeto a otro objeto. Considere la posibilidad de asignar un cierto "significado" a una cadena. Cada vez que refiere esa cadena, se refiere a su "significado".
Ejemplo:
bikes = Hash.new
bikes = {
'Bajaj' => 'Pulsar 220, Pulsar 200, Pulsar 180 and Pulsar 150',
'Honda' => 'Unicorn, Shine and Splendor',
'TVS' => 'Apache, Star City, and Victor'
}
probar este ahora:
bikes['Bajaj']
Se obtiene => "Pulsar 220, Pulsar 200, Pulsar 180 y Pulsar 150"
Los dos términos se " hashed "juntos estos días.Me que así es como va:
Un "control" tendrá clave -> pares de valores:
(top -> tshirt, bottom -> shorts, feet -> shoes)
Y un "array" tendrá típicamente un índice:
([0]tshirt, [1]shorts, [2]shoes)
Pero, correcto o incorrecto, verá cosas con pares clave -> llamados "matrices", también.
Creo que la diferencia depende principalmente de cuándo y cómo desea utilizarlos. No tendrás problemas para llamar a un array un hash, o viceversa, pero debes saber la diferencia.
- 1. ¿Cuál es la diferencia entre IEnumerable y matrices?
- 2. En PHP, ¿cuál es la diferencia entre hash y mhash?
- 3. ¿Cuál es la diferencia entre dict() y {}?
- 4. ¿Cuál es la diferencia entre matrices de matrices y matrices multidimensionales?
- 5. ¿Cuál es la diferencia entre una referencia hash y hash en Perl?
- 6. ¿Cuál es la diferencia entre {0} y ""?
- 7. Cuál es la diferencia entre = y: =
- 8. ¿Cuál es la diferencia entre .ToString (+) y ""
- 9. Cuál es la diferencia entre $ (...) y `...`
- 10. ¿cuál es la diferencia entre:.! y: r !?
- 11. ¿Cuál es la diferencia entre ".equals" y "=="?
- 12. ¿Cuál es la diferencia entre `##` y `hashCode`?
- 13. ¿Cuál es la diferencia entre "$^N" y "$ +"?
- 14. ¿Cuál es la diferencia entre [indefinido] y [,]?
- 15. ¿Cuál es la diferencia entre + = y = +?
- 16. ¿Cuál es la diferencia entre " " y ""?
- 17. Cuál es la diferencia entre $ y jQuery
- 18. ¿Cuál es la diferencia entre existe y se define?
- 19. En Ember.js, ¿cuál es la diferencia entre [] y Ember.A ([])?
- 20. Diferencia entre encriptación y hash
- 21. ¿Cuál es la diferencia entre ArrayList.clear() y ArrayList.removeAll()?
- 22. ¿Diferencia entre un objeto y un hash?
- 23. ¿Cuál es la diferencia entre usar MD5.Create y MD5CryptoServiceProvider?
- 24. Python: ¿Cuál es la diferencia entre __builtin__ y __builtins__?
- 25. ¿Cuál es la diferencia entre una combinación hash y una combinación merge (RDBMS de Oracle)?
- 26. ¿Cuál es la diferencia entre un hash y MAC (código de autenticación de mensajes)?
- 27. OpenGL (ES) - ¿Cuál es la diferencia entre frustum y orto?
- 28. Cuál es la diferencia entre la función() {}() y la función() {}()
- 29. ¿Cuál es la diferencia entre la abstracción y la encapsulación?
- 30. diferencia entre dos matrices
Una descripción de cuándo desea usar una en lugar de la otra, no solo una descripción técnica, podría ser una buena respuesta. –