Vous êtes sur la page 1sur 4

TPICO

about_Arrays
DESCRIO RESUMIDA
Descreve uma estrutura de dados compacta para armazenar elementos de dados
DESCRIO LONGA
Uma matriz uma estrutura de dados para armazenar um conjunto de
elementos de dados do mesmo tipo. O Windows PowerShell oferece
suporte a elementos de dados, como string, int (nmeros inteiros
de 32 bits), long (nmeros inteiros de 64 bits), bool (Booleano),
byte e outros tipos de objetos Microsoft .NET Framework.
CRIANDO E INICIALIZANDO UMA MATRIZ
Para criar e inicializar uma matriz, atribua vrios valores a uma
varivel.
Os valores armazenados na matriz so delimitados por uma vrgula
e separados do nome da varivel pelo operador de atribuio (=).
Por exemplo, para criar uma matriz chamada $A que contenha os
sete valores numricos (int) 22, 5, 10, 8, 12, 9 e 80, digite:
$A = 22,5,10,8,12,9,80
Voc tambm pode criar e inicializar uma matriz usando o operador de
intervalo (..). Por exemplo, para criar e inicializar uma matriz
chamada "$B" que contenha os valores de 5 a 8, digite:
$B = 5..8
Como resultado, $B contm quatro valores: 5, 6, 7 e 8.
Quando nenhum tipo de dados for especificado, o Windows PowerShell
criar cada matriz como uma matriz de objetos (digite: object []).
Para determinar o tipo dos dados de uma matriz, use o mtodo GetType().
Por exemplo, para descobrir o tipo de dados da matriz $a, digite:
$a.gettype()
Para criar uma matriz de um tipo forte, isto , uma matriz que
possa conter apenas valores de um tipo especfico, converta a
varivel como um tipo de matriz, como string[], long[] ou
int32[]. Para converter uma matriz, coloque antes do nome da
varivel um tipo de matriz entre colchetes. Por exemplo, para
criar uma matriz de nmeros inteiros de 32 bits chamada $ia que
contenha quatro inteiros (1500, 2230, 3350 e 4000), digite:
[int32[]]$ia = 1500,2230,3350,4000
Como resultado, a matriz $ia pode conter apenas nmeros inteiros.
Voc pode criar matrizes que so convertidas em qualquer tipo
compatvel no Microsoft .NET Framework. Por exemplo, os objetos que Get-Proces
s
recupera para representar processos so do tipo System.Diagnostics.Pro
cess. Para criar uma matriz de um tipo forte de objetos de processo,
digite o seguinte comando:
[Diagnostics.Process[]]$zz = Get-Process

Voc pode popular uma matriz usando a sada de um cmdlet, de uma


funo ou de uma instruo. Por exemplo, a seguinte instruo cria uma
matriz que contm os processos que comeam com as letras "co" e que
esto em execuo no computador atual:
$LocalProcesses = get-process co*
Se a instruo obtiver apenas um nico processo, a varivel
$LocalProcesses no ser uma matriz. Para assegurar que o comando
crie uma matriz, use o operador de subexpresso de matriz, @, conforme
mostrado no seguinte exemplo:
$LocalProcesses = @(get-process co*)
At mesmo se o comando retornar um nico processo, a
$LocalProcesses uma matriz. At mesmo se ele tiver
voc poder trat-lo como qualquer outra matriz. Por
voc pode adicionar outros objetos a ele. Para obter
informaes, consulte about_Operators.

varivel
um s membro,
exemplo,
mais

LENDO UMA MATRIZ


Voc pode se referir a uma matriz usando o nome de sua varivel,
como $A ou $a. O Windows PowerShell no diferencia maisculas de
minsculas.
Para exibir todos os elementos na matriz, digite o nome da matriz.
Por exemplo:
$a
Voc pode se referir aos elementos de uma matriz usando um ndice,
comeando na posio 0. Coloque o nmero do ndice entre colchetes.
Por exemplo, para exibir o primeiro elemento da matriz $a, digite:
$a[0]
Para exibir o terceiro elemento da matriz $a, digite:
$a[2]
Nmeros negativos so contados a partir do final da matriz. Por
exemplo, "-1" se refere ao ltimo elemento da matriz. Para exibir
os ltimos trs elementos da matriz, digite:
$a[-3..-1]
No entanto, seja cauteloso ao usar essa notao.
$a[0..-2]
Esse comando no se refere a todos os elementos da matriz, com exceo do ltimo.
Refere-se ao primeiro, ltimo e segundo ao ltimo elementos da matriz.
Voc pode usar o operador de intervalo para exibir um subconjunto
de todos os valores de uma matriz. Por exemplo, para exibir os
elementos de dados nas posies de ndice de 1 a 3, digite:
$a[1..3]

Voc pode usar o operador de adio (+) para combinar um


intervalo com uma lista de elementos em uma matriz. Por exemplo,
para exibir os elementos nas posies de ndice 0, 2 e 4 a 6, digite:
$a[0,2+4..6]
Para determinar quantos itens h em uma matriz, combine o
intervalo com a propriedade de tamanho de uma matriz. Por
exemplo, para exibir os elementos das posies de ndice de 2 at
o final da matriz, digite:
$a[2..($a.length-1)]
O tamanho definido como -1 porque o ndice comea na posio 0.
Portanto, em uma matriz de trs elementos (1,2,3), o ndice do
terceiro elemento 2, um a menos que o tamanho da matriz.
Voc tambm pode usar construes de loop, como loops Foreach,
For e While, para se referir aos elementos de uma matriz. Por
exemplo, para usar um loop Foreach para exibir os elementos na
matriz $a, digite:
foreach ($element in $a) {$element}
O loop Foreach itera na matriz, retornando cada valor, at
atingir o fim dela.
O loop For til quando voc est aumentando contadores ao
examinar os elementos de uma matriz. Por exemplo, para retornar
valores alternados de uma matriz usando um loop For, digite:
for ($i = 0; $i -le ($a.length - 1); $i += 2) {$a[$i]}
Voc pode usar um loop While para exibir os elementos de uma
matriz at que uma condio definida no seja mais verdadeira.
Por exemplo, para exibir os elementos da matriz $a enquanto o
ndice da matriz for menor que 4, digite:
$i=0
while($i -lt 4) {$a[$i]; $i++}
Para saber mais sobre as propriedades e os mtodos de uma matriz,
como a propriedade Length e o mtodo SetValue, use o parmetro
InputObject do cmdlet Get-Member. Quando voc canaliza uma matriz
para Get-Member, ele exibe informaes sobre os objetos da
matriz. Quando voc usa o parmetro InputObject, ele exibe
informaes sobre a matriz.
Para encontrar as propriedades e os mtodos da matriz $a, digite:
get-member -inputobject $a
MANIPULANDO UMA MATRIZ
Voc pode alterar os elementos de uma matriz, adicionar um
elemento a uma matriz e combinar os valores de duas matrizes em
uma terceira.
Para alterar o valor de um elemento especfico de uma matriz,

especifique o nome da matriz e o ndice do elemento que deseja


alterar e use o operador de atribuio (=) para especificar um
novo valor para o elemento. Por exemplo, para alterar o valor do
segundo item da matriz $a (posio de ndice 1) para 10, digite:
$a[1] = 10
Voc tambm pode usar o mtodo SetValue de uma matriz para
alterar um valor. O exemplo a seguir altera o segundo valor
(posio de ndice 1) da matriz $a para 500:
$a.SetValue(500,1)
Voc tambm pode acrescentar um elemento a uma matriz existente
usando o operador +=.
Esse operador adiciona a um valor existente. Quando o operador
usado em um elemento de uma matriz, ele aumenta o valor do
elemento. Quando o operador usado na prpria matriz, ele
acrescenta o valor. Por exemplo, para acrescentar um elemento com
um valor igual a 200 matriz $a, digite:
$a += 200
No fcil excluir elementos de uma matriz, mas voc pode criar
uma nova matriz que contenha apenas elementos selecionados de uma
matriz existente. Por exemplo, para criar a matriz $t com todos
os elementos na matriz $a, com exceo do valor na posio de
ndice 2, digite:
$t = $a[0,1 + 3..($a.length - 1)]
Para combinar duas matrizes em uma nica, use o operador de
adio (+). O exemplo a seguir cria duas matrizes, combina ambas
e exibe a matriz combinada resultante.
$x = 1,3
$y = 5,9
$z = $x + $y
Como resultado, a matriz $z contm 1, 3, 5 e 9.
Para excluir uma matriz, use o cmdlet Remove-Item para excluir a
varivel que contm a matriz. O seguinte comando especifica o
elemento "a" na unidade Variable:
remove-item variable:a
(Para obter mais informaes sobre a unidade Variable:,
consulte o tpico da Ajuda Provedor de varivel.)
CONSULTE TAMBM
about_Assignment_Operators
about_Hash_Tables
about_Operators
about_For
about_Foreach
about_While

Vous aimerez peut-être aussi