PowerShell でオブジェクトの配列にオブジェクトを追加する方法

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

PowerShell は、その多様なスクリプティング機能により、ユーザーがオブジェクトの配列を効率的に操作できるようにします。オブジェクトを配列に追加することは一般的な操作であり、これを達成するためのさまざまな方法があります。

配列は、複数のアイテムのコレクションを格納するデータ構造です。

配列には、PowerShell で 1つ以上のアイテムを含むことができます。アイテムは同じ型または異なる型であることができます。

アイテムは文字列、整数、オブジェクト、または別の配列であることもできます。1つの配列には、これらのアイテムの任意の組み合わせが含まれます。

各アイテムはインデックス番号に格納され、ゼロから始まります。最初のアイテムは 0 に、2 番目のアイテムは 1 に、3 番目のアイテムは 2 に格納されます。

オブジェクトの配列は、オブジェクトのコレクションです。このチュートリアルでは、PowerShell でオブジェクトの配列にオブジェクトを追加する方法を学びます。

ここでは、NameAge を持つオブジェクトを含む配列 $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

この例では、要素 12、および 3 を含む既存の配列 $array があります。新しい配列 $newElements には、要素 45、および 6 を作成します。

+= 演算子を使用して、新しい要素を既存の配列に追加し、123456 を含む更新された配列を得ます。

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 で作成し、最初の要素 12、および 3AddRange メソッドを使用して追加します。

その後、+= 演算子を使用して新しい要素 45、および 6ArrayList に追加します。その結果、すべての追加された要素を含む更新された ArrayList が得られます。

注意
ArrayList を使用することで、特に大きなデータセットに対して、単純な配列の+= アプローチよりも効率的になる可能性があります。

ArrayList での Add メソッドの使用

ArrayListAdd メソッドは、個別の要素を追加することを可能にし、動的な更新に有用です。

コードの例:

# 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 で作成し、最初の要素 12、および 3AddRange メソッドを使用して追加します。

その後、Add メソッドを使用して新しい要素 45、および 6 を個別に ArrayList に追加します。その結果、すべての追加された要素を含む更新された ArrayList が得られます。

注意
Add メソッドは効率的で、要素を個別に追加するシナリオに適しています。

結論

この記事では、PowerShell のオブジェクトの配列にオブジェクトを追加する方法を探ります。PowerShell における配列の基本、すなわち多様なデータ型を格納できる能力や、アイテムの取得に用いるインデックス番号についてカバーしています。

主な焦点は、配列にオブジェクトを追加することであり、さまざまな技術を紹介します:

  1. += 演算子の使用:このシンプルな方法は、毎回の追加で新しい配列を作成するもので、小さなデータセットに適しています。
  2. += 演算子を使った配列の結合:既存の配列と新しい要素を組み合わせるための+= の使用を示し、動的更新の柔軟性を提供します。
  3. ArrayList の使用:動的配列操作をより効率的に行うための ArrayList クラスを紹介し、特に大きなデータセットに有利です。
  4. ArrayList での Add メソッドの使用:要素を個別に ArrayList に追加するための Add メソッドの使用を説明し、効率性を強調しています。

提供された例は、オブジェクトの配列を管理する際の PowerShell の柔軟性を示しており、この記事はパフォーマンス、シンプルさ、型安全性の考慮に基づいて最も適切な方法を選択する重要性を強調しています。これらの方法を理解することで、PowerShell のユーザーは、さまざまなスクリプティングや自動化タスクにおける配列操作で情報に基づいた決定を下すことができます。

チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
著者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

関連記事 - PowerShell Array