Powershell - Array
PowerShell fornisce una struttura dati, il array, che memorizza una raccolta sequenziale di dimensioni fisse di elementi di qualsiasi tipo. Un array viene utilizzato per memorizzare una raccolta di dati, ma spesso è più utile pensare a un array come una raccolta di variabili o oggetti.
Invece di dichiarare singole variabili, come numero0, numero1, ... e numero99, dichiari una variabile di matrice come numeri e utilizzi numeri [0], numeri [1] e ..., numeri [99] per rappresentare variabili individuali.
Questo tutorial introduce come dichiarare variabili di array, creare array ed elaborare array utilizzando variabili indicizzate.
Dichiarazione delle variabili di matrice
Per utilizzare un array in un programma, è necessario dichiarare una variabile per fare riferimento all'array e specificare il tipo di array a cui la variabile può fare riferimento. Ecco la sintassi per dichiarare una variabile di matrice:
Sintassi
$A = 1, 2, 3, 4
or
$A = 1..4
Note- Per impostazione predefinita, il tipo di oggetti dell'array è System.Object. Il metodo GetType () restituisce il tipo di array. Il tipo può essere passato.
Esempio
I seguenti frammenti di codice sono esempi di questa sintassi:
[int32[]]$intA = 1500,2230,3350,4000
$A = 1, 2, 3, 4
$A.getType()
Questo produrrà il seguente risultato:
Produzione
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Object[] System.Array
Gli elementi dell'array sono accessibili tramite index. Gli indici di matrice sono a base 0; cioè, iniziano da 0 aarrayRefVar.length-1.
Esempio
La seguente istruzione dichiara una variabile array, myList, crea un array di 10 elementi di tipo double e assegna il suo riferimento a myList -
$myList = 5.6, 4.5, 3.3, 13.2, 4.0, 34.33, 34.0, 45.45, 99.993, 11123
L'immagine seguente rappresenta la matrice myList. Qui, myList contiene dieci valori doppi e gli indici vanno da 0 a 9.
Elaborazione di array
Quando elaboriamo gli elementi dell'array, spesso usiamo entrambi for loop o foreach perché tutti gli elementi in un array sono dello stesso tipo e la dimensione dell'array è nota.
Esempio
Ecco un esempio completo che mostra come creare, inizializzare ed elaborare array:
$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
Questo produrrà il seguente risultato:
Produzione
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
Esempi di metodi di array
Di seguito è riportato un esempio completo che mostra le operazioni sugli array utilizzando i suoi metodi
$myList = @(0..4)
write-host("Print array")
$myList
$myList = @(0..4)
write-host("Assign values")
$myList[1] = 10
$myList
Questo produrrà il seguente risultato:
Produzione
Clear array
Print array
0
1
2
3
4
Assign values
0
10
2
3
4