Ruby/Подробнее об ассоциативных массивах: различия между версиями
Содержимое удалено Содержимое добавлено
Новая: == Подробнее об ассоциативных массивах == Различают два типа массивов: индексные, у которых в качестве ... |
|||
Строка 47:
Начальный хеш был создан хитроумной комбинацией <code>Hash.new{0}</code>, что в переводе на русский означает примерно следующее: «создадим пустой хеш, в котором любому несуществующему ключу будет соответствовать <code>0</code>». Это нужно, чтобы суммирование (метод <code>+</code>) не выдавало ошибку вида: «не могу сложить <code>nil</code> и число типа <code>Fixnum</code>». В качестве упражнения, предлагаю вам заменить комбинацию <code>Hash.new{ 0 }</code> на <code>{}</code> и посмотреть, чем это чревато.
Зачем нужно дописывать <code>result</code>? Дело в том, что комбинация <code>result[i] +=
В качестве упражнения, предлагаю вам переписать программу без вышеописанных двух особенностей (используйте метод <code>.update</code>). Решение будет опубликовано ниже.
|