1個目の foreach Key3 Val3 Key1 Val1 Key2 Val2 2個目の foreach Key3 Val3 Key1 Val1 Key2 Val2 3個目の foreach Val3 Val1 Val2
foreach で連想配列(ハッシュ)の全ての要素を処理する方法
スポンサーリンク
PowerShell では foreach ステートメントを使用して連想配列の全ての要素を処理することができます。ちなみに連想配列(HashTable)では初期化時の並び順は保持されない為、並び替えを行いたい場合は事前にsortで並べ替える必要があります。並び替えについては連想配列(ハッシュ)をキーや値でソートする方法のページを参照してください。
foreach のサンプルコード
foreach で連想配列を処理するにはいくつかの方法がありますが、このサンプルコードでは3個の方法を紹介します。
PowerShell(実行可能なサンプルコード) | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | # 連想配列(ハッシュ)を作成する。 # 【注意】HashTableでは初期化時の並び順は保持されません。 $my_hash = @{ 'Key1' = 'Val1'; 'Key2' = 'Val2'; 'Key3' = 'Val3'; }; # 連想配列を foreach で処理する。(GetEnumeratorを使用。) Write-Host '1個目の foreach'; foreach($entry in $my_hash.GetEnumerator()){ $key = $entry.Key; $val = $entry.Value; Write-Host $key; Write-Host $val; } # 連想配列を foreach で処理する。(Keysをループする。) Write-Host '2個目の foreach'; foreach($key in $my_hash.Keys){ $val = $my_hash[$key]; Write-Host $key; Write-Host $val; } # 連想配列を foreach で処理する。(Valuesをループする。) Write-Host '3個目の foreach'; foreach($val in $my_hash.Values){ Write-Host $val; } |
実行結果は次の通りです。連想配列(HashTable)では初期化時の順序は維持されません。
foreach にパイプで流し込む場合
PowerShell(実行可能なサンプルコード) | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | # 連想配列(ハッシュ)を作成する。 # 【注意】HashTableでは初期化時の並び順は保持されません。 $my_hash = @{ 'Key1' = 'Val1'; 'Key2' = 'Val2'; 'Key3' = 'Val3'; }; # 連想配列を foreach で処理する。(GetEnumeratorを使用。) Write-Host '1個目の foreach'; $my_hash.GetEnumerator() | foreach{ $key = $_.Key; $val = $_.Value; Write-Host $key; Write-Host $val; } # 連想配列を foreach で処理する。(Keysをループする。) Write-Host '2個目の foreach'; $my_hash.Keys | foreach{ $key = $_; $val = $my_hash[$_]; Write-Host $key; Write-Host $val; } # 連想配列を foreach で処理する。(Valuesをループする。) Write-Host '3個目の foreach'; $my_hash.Values | foreach{ Write-Host $_; } |
実行結果は次の通りです。連想配列(HashTable)では初期化時の順序は維持されません。
1個目の foreach Key3 Val3 Key1 Val1 Key2 Val2 2個目の foreach Key3 Val3 Key1 Val1 Key2 Val2 3個目の foreach Val3 Val1 Val2
スポンサーリンク
- 配列
- 配列の要素数を確認する方法
- 連想配列(ハッシュ)を使用する
- 連想配列(ハッシュ)のキーの一覧を取得する方法
- 配列内の値を検索する方法
- 配列をソートする(昇順・降順)
- 配列内の重複した値を削除する方法
- 配列の要素の値を連結して一つの文字列にする方法
- 変数が配列かを調べる方法
- 配列に要素を追加する方法
- 空の配列を作成する方法
- for で配列の全ての要素を処理する方法
- foreach で配列の全ての要素を処理する方法
- 空の連想配列(ハッシュ)を作成する方法
- 連想配列(ハッシュ)に指定したキーが含まれるかを確認する方法
- 連想配列(ハッシュ)に指定した値が含まれるかを確認する方法
- foreach で連想配列(ハッシュ)の全ての要素を処理する方法
- 連想配列(ハッシュ)をキーや値で並び替える方法(連想配列のソート)
- 配列に指定した値が含まれるかを確認する方法
- 配列の先頭の要素を削除する方法