Files
freeCodeCamp/guide/russian/ruby/ruby-hashes/index.md
2018-10-16 21:32:40 +05:30

54 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
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)