『初めてのPerl』第6章 ハッシュ

  • Perlでは、キーと値のペアを格納したデータ構造のことをハッシュ(hash)と呼ぶ
  • ハッシュのキーはユニークな文字列である
  • Perlのハッシュは、要素の順序を保存しない

keys関数とvalues関数(全てのキー/値を取り出す):

#!/usr/bin/env perl
use v5.12;
use warnings;
my %hash = ('a' => 1, 'b' => 2, 'c' => 3);
my @k = keys %hash;
my @v = values %hash;
say "@k"; # a b c (順不同)
say "@v"; # 1 2 3 (順不同)

each関数(ハッシュ全体に繰り返しを行う):

#!/usr/bin/env perl
use v5.12;
use warnings;
my %hash = ('a' => 1, 'b' => 2, 'c' => 3);
while ((my $key, my $value) = each %hash) {
say "$key => $value";
}

exists関数(あるキーがハッシュの中に存在するか確認):

#!/usr/bin/env perl
use v5.12;
use warnings;
my %books = ('hoge' => 'fuga');
if (exists $books{'hoge'}) {
say $books{'hoge'};
}

delete関数(ハッシュから指定されたキーを削除):

#!/usr/bin/env perl
use v5.12;
use warnings;
my %hash = ('key' => 'val');
delete $hash{'key'};
if (exists $hash{'key'}) {
say 'not deleted';
} else {
say 'deleted';
}

コメントを残す

コメントを残す