PowerShell: 連想配列の要素数を取得する Count
PowerShellで連想配列(ハッシュテーブル)の要素数 (キーと値のペアの数) を取得する場合は Count プロパティを使用します。
書式
$連想配列.Count
注意点として、 配列の要素数はLengthまたはCountのどちらでも取得できますが、 連想配列はCountのみです。 間違ってLengthを使用すると、Countとは異なる値を取得してしまいます。 空の連想配列の要素数は「0」です。
次のコードでは連想配列の要素数を取得しています。 追加時には要素数が1増えているのが確認できます。
$h = @{ a = 100 b = 200 c = 300 } $h.Count # 3 $h.d = 400 $h.Count # 4
空の連想配列の場合、要素数は0です。
$h = @{} $h.Count # 0
試しにCountプロパティだけでなく、 Lengthを指定するとどうなるかやってみます。
$h = @{a = 100; b = 200; c = 300} $h.Count # 3 $h.Length # 1 $h.d = 400 $h.Count # 4 $h.Length # 1
Lengthを指定した場合、 エラーにはならずに「1」が返って来るようです。 CountとLengthを間違えるとバグの原因となるので 注意してください。
参考サイト
ハッシュテーブルについて知りたかったことのすべて - PowerShell | Microsoft Docs