まくまくPerlノート
ハッシュを定義する
2008-02-29

ハッシュ変数全体を表すには、ハッシュ変数名の前に % を付けます。 ハッシュの要素を定義するには、以下のように、キーと値のペアをリストの要素として列挙します。

my %hash = (
    'AAA', 100,
    'BBB', 200,
    'CCC', 300,
);

つまり、(キー, 値, キー, 値, ...) というリストをハッシュ変数に代入することで、ハッシュの要素を生成しています。 ハッシュのキーと値の間のカンマは、=> と記述することもできます。

my %hash = (
    'AAA' => 100,
    'BBB' => 200,
    'CCC' => 300,
);

キーと値を => で区切った場合は、キーの部分にクォートしていない裸のワード (bare word) を置くことができます。

my %hash = (
    AAA => 100,
    BBB => 200,
    CCC => 300,
);

ハッシュを参照するときは、次のようにします。

print $hash{'key'};    # 値の参照
$hash{'key'} = 100;    # 値の代入

ハッシュのキーに単純なワードを置く場合は、クォートを省略することができます。

print $hash{key};
2008-02-29