freeCodeCamp/guide/russian/ruby/ruby-hashes/index.md

54 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: Ruby Hashes
localeTitle: Рубиновые хеши
---
## Рубиновые хеши
Хэш представляет собой набор ключей и значений. Это похоже на то, что обычно называют словарем на других языках. В Ruby хэш похож на [массив](https://raw.githubusercontent.com/freeCodeCamp/guides/master/src/pages/ruby/ruby-arrays/index.md) , но вместо того, чтобы просто хранить значение, он хранит пару ключей, значений.
```ruby
array = ["value"]
hash = { "key" => "value" }
```
Существует несколько способов создания нового хэша:
```ruby
hash1 = {a: 100, b: "200"}
hash2 = Hash.new
hash3 = Hash.new(0) # with default value set to 0
```
Затем программист может получить доступ к хеш-значению, используя свой ключ, а не индекс.
```ruby
array[0] # => "value"
hash["key"] # => "value"
```
Таким образом, хэш действует скорее как словарь, где вы можете искать значение по его ключу.
```ruby
dictionary = { "Aardvark" => "a large, nocturnal, burrowing mammal",
"Zyzzyva" => "a genus of tropical weevils" }
dictionary["Aardvark"] # => "a large, nocturnal, burrowing mammal"
dictionary["Zyzzyva"] # => "a genus of tropical weevils"
```
Вы также можете создать хэш, используя [символы в](#) качестве ключей.
```ruby
hash = { :symbol => "value" }
hash[:symbol] # => "value"
```
Кроме того, если все ваши ключи являются [символами](#) , вы можете записать свой хэш в этом альтернативном формате, но вы получите доступ к нему таким же образом:
```ruby
hash = { symbol: "value" }
hash[:symbol] # => "value"
```
#### Дополнительная информация:
[Ручная хеш-документация](https://ruby-doc.org/core-2.4.2/Hash.html)