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|
! Разве это не безумие?