Intern
71
questionbank

Что такое хеш (HASH) в Ruby?

Получайте ответы на вопросы в реальном времени с Sobes Copilot
Ответ от нейросети sobes.tech

Хеш (Hash) в Ruby — это упорядоченная коллекция пар "ключ-значение", где каждый уникальный ключ связан с определенным значением. Ключи обычно являются символами (Symbol) или строками (String), но могут быть любыми объектами, для которых реализованы методы eql? и hash.

Особенности хеша:

  • Упорядоченность: С версии Ruby 1.9 хеши поддерживают порядок вставки элементов.
  • Доступ по ключу: Доступ к значениям осуществляется быстро по соответствующему ключу.
  • Динамический размер: Хеши могут расширяться или сжиматься по мере добавления или удаления элементов.
  • Отсутствие дубликатов ключей: Каждый ключ уникален в пределах одного хеша.

Примеры создания хеша:

ruby

Основные операции с хешами:

ОперацияПримерОписание
Доступ к значениюperson["name"]Возвращает значение по ключу "name"
Добавление/изменениеperson["city"] = "New York"Добавляет пару или изменяет значение по ключу
Удалениеperson.delete("age")Удаляет пару по ключу "age"
Размерperson.size или person.lengthВозвращает количество пар в хеше
Проверка ключаperson.key?("name")Проверяет наличие ключа в хеше
Проверка значенияperson.value?(30)Проверяет наличие значения в хеше
Итерация`person.each {key, value
Возврат ключейperson.keysВозвращает массив всех ключей
Возврат значенийperson.valuesВозвращает массив всех значений

Пример использования:

ruby