Professional Documents
Culture Documents
about_Arrays
DESCRIPCIN BREVE
Estructura de datos compacta para almacenar elementos de datos
DESCRIPCIN DETALLADA
Una matriz consiste en una estructura de datos para almacenar una
coleccin de elementos de datos del mismo tipo. Windows
PowerShell admite elementos de datos, como string, int (entero de
32 bits), long (entero de 64 bits), bool (booleano), byte y otros
tipos de objetos de Microsoft .NET Framework .
CREAR E INICIALIZAR UNA MATRIZ
Para crear e inicializar una matriz, debe asignar varios valores a una
variable.
Los valores almacenados en la matriz estn delimitados con una coma y
separados del nombre de la variable por el operador de asignacin (=).
Por ejemplo, para crear una matriz denominada $A que contenga los
siete valores numricos (int) 22, 5, 10, 8, 12, 9 y
80, escriba:
$A = 22,5,10,8,12,9,80
Tambin puede crear e inicializar una matriz con el operador de
intervalo (..). Por ejemplo, para crear e inicializar una matriz
llamada $B que contenga los valores del 5 al 8, escriba:
$B = 5..8
Como resultado, la matriz $B contiene cuatro valores: 5, 6, 7 y 8.
Cuando no se especifica el tipo de datos, Windows PowerShell crea cada
matriz como una matriz de objetos (tipo: object[]). Para determinar
el tipo de datos de una matriz, use el mtodo GetType(). Por ejemplo,
para determinar el tipo de datos de la matriz $a, escriba:
$a.gettype()
Para crear una matriz con establecimiento inflexible de tipos (es
decir, una matriz que pueda contener nicamente valores de un
determinado tipo), convierta la variable como un tipo de matriz,
por ejemplo, string[], long[] o int32[]. Para convertir una matriz,
el nombre de la variable debe ir precedido de un tipo de matriz
especificado entre corchetes. Por ejemplo, para crear una matriz de
enteros de 32 bits denominada $ia y que contenga cuatro enteros
(1500, 2230, 3350 y 4000), escriba:
[int32[]]$ia = 1500,2230,3350,4000
Como resultado, la matriz $ia puede contener solo nmeros enteros.
Puede crear matrices que se conviertan en cualquier tipo
compatible en Microsoft .NET Framework. Por ejemplo, los objetos que
Get-Process
recupera para representar procesos son del tipo System.Diagnostics.
Process. Para crear una matriz de objetos de proceso con establecimiento
inflexible de tipos, escriba el siguiente comando:
[Diagnostics.Process[]]$zz = Get-Process
Puede rellenar una matriz utilizando la salida de un cmdlet, una
funcin o una instruccin. Por ejemplo, la instruccin siguiente
crea una matriz que contiene los procesos que comienzan por las
letras "co" y que se estn ejecutando en el equipo actual:
$LocalProcesses = get-process co*
Si la instruccin obtiene un nico proceso, la variable
$LocalProcesses no ser una matriz. Para asegurarse de que el
comando cree una matriz, se utiliza el operador de subexpresin
de matriz, @, como se muestra en el ejemplo siguiente:
$LocalProcesses = @(get-process co*)
Aunque el comando devuelva un nico proceso, la variable
$LocalProcesses es una matriz. Aunque tenga un solo miembro, es
posible tratarla como cualquier otra matriz. Por ejemplo, se le pueden
agregar otros objetos. Para obtener ms informacin, vea about_Operators.
LEER UNA MATRIZ
Puede hacer referencia a una matriz mediante el nombre de variable
correspondiente, como $A o $a. Windows PowerShell no distingue entre
maysculas y minsculas.
Para mostrar todos los elementos de la matriz, se escribe su
nombre. Por ejemplo:
$a
Es posible hacer referencia a los elementos de una matriz
mediante un ndice, con el inicio en la posicin 0. El nmero de
ndice debe especificarse entre corchetes. Por ejemplo, para
mostrar el primer elemento de la matriz $a, escriba:
$a[0]
Para mostrar el tercer elemento de la matriz $a, escriba:
$a[2]
Los nmeros negativos se aplican desde el final de la matriz. Por
ejemplo, "-1" hace referencia al ltimo elemento de la matriz.
Para mostrar los tres ltimos elementos de la matriz, escriba:
$a[-3..-1]
No obstante, proceda con precaucin cuando use esta notacin.
$a[0..-2]
Este comando no hace referencia a todos los elementos de la matriz, solo al
ltimo elemento.
Hace referencia a los elementos primero, ltimo y penltimo de la
matriz.
Puede usar el operador de intervalo para mostrar un subconjunto
de todos los valores de una matriz. Por ejemplo, para mostrar los
about_Hash_Tables
about_Operators
about_For
about_Foreach
about_While