PHP, несмотря ни на что, довольно хорош в этом смысле. Нет никакой разницы между массивом и хэшем (возможно, я наивен, но это, очевидно, мне подходит), и для итерации либо вы просто делаете
foreach (array/hash as $key => $value)
В Ruby есть множество способов сделать это:
array.length.times do |i|
end
array.each
array.each_index
for i in array
Хэши имеют больше смысла, так как я просто всегда использую
hash.each do |key, value|
Почему я не могу сделать это для массивов? Если я хочу запомнить только один метод, думаю, я могу использовать each_index
(так как он делает доступными и индекс, и значение), но раздражает необходимость делать array[index]
вместо value
.
Да, я забыл про array.each_with_index
. Однако, этот отстой, потому что он идет |value, key|
и hash.each
идет |key, value|
! Разве это не безумие?