Powershell-array

提供:Dev Guides
移動先:案内検索

Powershell-配列

PowerShellは、任意の型の要素の固定サイズの順次コレクションを格納するデータ配列 array を提供します。 配列はデータのコレクションを格納するために使用されますが、配列を変数またはオブジェクトのコレクションと考える方が便利な場合があります。

number0、number1、…​、number99などの個々の変数を宣言する代わりに、numbersなどの1つの配列変数を宣言し、numbers [0]、numbers [1]、…​、numbers [99]を使用して表現します個々の変数。

このチュートリアルでは、配列変数の宣言、配列の作成、およびインデックス付き変数を使用した配列の処理方法を紹介します。

配列変数の宣言

プログラムで配列を使用するには、配列を参照する変数を宣言する必要があり、変数が参照できる配列のタイプを指定できます。 ここに配列変数を宣言するための構文があります-

構文

$A = 1, 2, 3, 4
or
$A = 1..4

-デフォルトでは、配列のオブジェクトのタイプはSystem.Objectです。 GetType()メソッドは、配列のタイプを返します。 タイプを渡すことができます。

次のコードスニペットは、この構文の例です-

[int32[]]$intA = 1500,2230,3350,4000

$A = 1, 2, 3, 4
$A.getType()

これは、次の結果を生成します-

出力

IsPublic    IsSerial    Name                        BaseType
--------    --------    ----                        --------
True        True        Object[]                    System.Array

配列要素は index を介してアクセスされます。 配列インデックスは0ベースです。つまり、0から arrayRefVar.length-1 で始まります。

次のステートメントは、配列変数myListを宣言し、double型の10要素の配列を作成し、その参照をmyListに割り当てます-

$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123

次の図は、配列myListを表しています。 ここで、myListは10個のdouble値を保持し、インデックスは0〜9です。

Array myList

配列の処理

配列要素を処理するときは、配列のすべての要素が同じ型であり、配列のサイズがわかっているため、 for ループまたは foreach ループを使用することがよくあります。

配列を作成、初期化、処理する方法を示す完全な例は次のとおりです-

$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123

write-host("Print all the array elements")
$myList

write-host("Get the length of array")
$myList.Length

write-host("Get Second element of array")
$myList[1]

write-host("Get partial array")
$subList = $myList[1..3]

write-host("print subList")
$subList

write-host("using for loop")
for ($i = 0; $i -le ($myList.length - 1); $i += 1) {
  $myList[$i]
}

write-host("using forEach Loop")
foreach ($element in $myList) {
  $element
}

write-host("using while Loop")
$i = 0
while($i -lt 4) {
  $myList[$i];
  $i++
}

write-host("Assign values")
$myList[1] = 10
$myList

これは、次の結果を生成します-

出力

Print all the array elements
5.6
4.5
3.3
13.2
4
34.33
34
45.45
99.993
11123
Get the length of array
10
Get Second element of array
4.5
Get partial array
print subList
4.5
3.3
13.2
using for loop
5.6
4.5
3.3
13.2
4
34.33
34
45.45
99.993
11123
using forEach Loop
5.6
4.5
3.3
13.2
4
34.33
34
45.45
99.993
11123
using while Loop
5.6
4.5
3.3
13.2
Assign values
5.6
10
3.3
13.2
4
34.33
34
45.45
99.993
11123

配列メソッドの例

メソッドを使用した配列の操作を示す完全な例です

$myList = @(0..4)

write-host("Print array")
$myList

$myList = @(0..4)

write-host("Assign values")
$myList[1]  = 10
$myList

これは、次の結果を生成します-

出力

Clear array
Print array
0
1
2
3
4
Assign values
0
10
2
3
4