each ASSOC_ARRAY
リストコンテキストで呼び出すと、each
はハッシュのキーと値を返します。取り出し順はランダムです。配列をすべて読み込んでしまうと、空配列が返されます。スカラコンテキストで呼び出した場合は、ハッシュの次の要素にあたるキーを返します。
each
の使い方
%hash = ('Akai', 27, 'Ishikawa', 30); # ハッシュのキーと値がなくなるまで処理する while ( ($key, $value) = each %hash ) { print "$key : $hash{$key}", "\n"; }
each
の実行中には、そのハッシュに要素を追加してはいけません。delete
を使うことは問題ありません。また、each
の実行中に、each
や、keys
、values
を使うと、はじめから処理がやり直しになります。