PowerShell でオブジェクトの配列にオブジェクトを追加する方法
-
PowerShell のオブジェクトの配列にオブジェクトを追加するための
+=
演算子の使用 -
配列を使用して
+=
演算子でオブジェクトを配列に追加する -
ArrayList
を使用した+=
演算子の使用 -
ArrayList
でのAdd
メソッドの使用 - 結論

PowerShell は、その多様なスクリプティング機能により、ユーザーがオブジェクトの配列を効率的に操作できるようにします。オブジェクトを配列に追加することは一般的な操作であり、これを達成するためのさまざまな方法があります。
配列は、複数のアイテムのコレクションを格納するデータ構造です。
配列には、PowerShell で 1つ以上のアイテムを含むことができます。アイテムは同じ型または異なる型であることができます。
アイテムは文字列、整数、オブジェクト、または別の配列であることもできます。1つの配列には、これらのアイテムの任意の組み合わせが含まれます。
各アイテムはインデックス番号に格納され、ゼロから始まります。最初のアイテムは 0
に、2 番目のアイテムは 1
に、3 番目のアイテムは 2
に格納されます。
オブジェクトの配列は、オブジェクトのコレクションです。このチュートリアルでは、PowerShell でオブジェクトの配列にオブジェクトを追加する方法を学びます。
ここでは、Name
と Age
を持つオブジェクトを含む配列 $data
を作成する例を示します。
$data = @(
[pscustomobject]@{Name = 'Rohan'; Age = '21' }
[pscustomobject]@{Name = 'John'; Age = '30' }
)
PowerShell のオブジェクトの配列にオブジェクトを追加するための+=
演算子の使用
+=
演算子は、PowerShell の配列に要素を追加する簡単な方法です。これは、追加の要素を持つ新しい配列を作成することで機能します。
プラスイコール+=
は、配列にアイテムを追加するために使用されます。使用するたびに、配列の複製が作成され、新しい配列が生成されます。
PowerShell のオブジェクトの配列にオブジェクトを追加するために+=
を使用できます。
以下の例では、オブジェクトの配列 $data
を追加しています。
$data += [pscustomobject]@{Name = 'Sam'; Age = '26' }
今、$data
の要素を確認します。
$data
出力:
Name Age
---- ---
Rohan 21
John 30
Sam 26
インデックス番号を括弧で囲むことで、配列からオブジェクトにアクセスできます。
例えば:
$data[2]
出力:
Name Age
---- ---
Sam 26
以下に示すように、個別のオブジェクトにはプロパティを指定することでアクセスできます。
$data[2].Name
出力:
Sam
配列を使用して+=
演算子でオブジェクトを配列に追加する
複数の要素を配列に追加するには、+=
演算子を別の配列と組み合わせることができます。
コードの例:
# Existing array
$array = @(1, 2, 3)
# Array of new elements
$newElements = @(4, 5, 6)
# Add new elements to the existing array
$array += $newElements
# Display the updated array
$array
出力:
1
2
3
4
5
6
この例では、要素 1
、2
、および 3
を含む既存の配列 $array
があります。新しい配列 $newElements
には、要素 4
、5
、および 6
を作成します。
+=
演算子を使用して、新しい要素を既存の配列に追加し、1
、2
、3
、4
、5
、6
を含む更新された配列を得ます。
ArrayList
を使用した+=
演算子の使用
PowerShell の ArrayList
クラスは、効率的に変更できる動的配列を提供します。
コードの例:
# Using an ArrayList
$arrayList = New-Object System.Collections.ArrayList
$arrayList.AddRange(@(1, 2, 3))
# Add new elements
$arrayList += 4
$arrayList += 5
$arrayList += 6
# Display the updated ArrayList
$arrayList
出力:
1
2
3
4
5
6
この例では、ArrayList
を名前 $arrayList
で作成し、最初の要素 1
、2
、および 3
を AddRange
メソッドを使用して追加します。
その後、+=
演算子を使用して新しい要素 4
、5
、および 6
を ArrayList
に追加します。その結果、すべての追加された要素を含む更新された ArrayList
が得られます。
ArrayList
を使用することで、特に大きなデータセットに対して、単純な配列の+=
アプローチよりも効率的になる可能性があります。ArrayList
での Add
メソッドの使用
ArrayList
の Add
メソッドは、個別の要素を追加することを可能にし、動的な更新に有用です。
コードの例:
# Using an ArrayList
$arrayList = New-Object System.Collections.ArrayList
$arrayList.AddRange(@(1, 2, 3))
# Add new elements using the Add method
$arrayList.Add(4)
$arrayList.Add(5)
$arrayList.Add(6)
# Display the updated ArrayList
$arrayList
出力:
3
4
5
1
2
3
4
5
6
この例では、ArrayList
を名前 $arrayList
で作成し、最初の要素 1
、2
、および 3
を AddRange
メソッドを使用して追加します。
その後、Add
メソッドを使用して新しい要素 4
、5
、および 6
を個別に ArrayList
に追加します。その結果、すべての追加された要素を含む更新された ArrayList
が得られます。
Add
メソッドは効率的で、要素を個別に追加するシナリオに適しています。結論
この記事では、PowerShell のオブジェクトの配列にオブジェクトを追加する方法を探ります。PowerShell における配列の基本、すなわち多様なデータ型を格納できる能力や、アイテムの取得に用いるインデックス番号についてカバーしています。
主な焦点は、配列にオブジェクトを追加することであり、さまざまな技術を紹介します:
+=
演算子の使用:このシンプルな方法は、毎回の追加で新しい配列を作成するもので、小さなデータセットに適しています。+=
演算子を使った配列の結合:既存の配列と新しい要素を組み合わせるための+=
の使用を示し、動的更新の柔軟性を提供します。ArrayList
の使用:動的配列操作をより効率的に行うためのArrayList
クラスを紹介し、特に大きなデータセットに有利です。ArrayList
でのAdd
メソッドの使用:要素を個別にArrayList
に追加するためのAdd
メソッドの使用を説明し、効率性を強調しています。
提供された例は、オブジェクトの配列を管理する際の PowerShell の柔軟性を示しており、この記事はパフォーマンス、シンプルさ、型安全性の考慮に基づいて最も適切な方法を選択する重要性を強調しています。これらの方法を理解することで、PowerShell のユーザーは、さまざまなスクリプティングや自動化タスクにおける配列操作で情報に基づいた決定を下すことができます。