0
votes

Comment créer une matrice dynamique multidimensionnelle dans PowerShell

Comment puis-je créer un tableau comme: xxx

et ainsi de suite. Merci

J'ai essayé comme ceci: xxx

mais il ne donne pas la sortie requise


2 commentaires

Qu'avez-vous essayé jusqu'à présent et quels problèmes spécifiques as-tu?


J'ai essayé comme ça: $ b = @ {} $ B [0] [0] = 1 $ B [0] [1] = 2 $ B [0] [2] = 3 $ B [1] [0] = 4 $ B [1] [1] = 5 $ B [1] [2] = 6 $ B mais PowerShell montre-moi que l'erreur ne peut pas indexer dans un tableau NULL.


3 Réponses :


1
votes

Je pense que cela a été posté plusieurs fois, mais déclarez simplement la matrice et donnez des valeurs informatiques:

$b[1].1


4 commentaires

Merci beaucoup. C'est de quoi j'ai besoin. Bonne journée


Comment puis-je créer de manière dynamique et ajouter à ces valeurs de matrice?


Vous pouvez simplement ajouter en faisant $ B + = @ {key = "valeur"}. Si ce n'est pas exactement ce que vous voulez dire, veuillez poster un exemple de ce que vous essayez d'atteindre. Parfois, les psobjects offrent plus de flexibilité.


$ k = 0 pour ($ j = 0; $ j -le $ c.compount; $ j + = 47) {$ b = @ {$ k = @ {} pour $ c [$ j]) { $ B [$ k] + = @ {1 = "value1" 2 = "valeur2"}} $ k ++} $ B



0
votes

Vous pouvez utiliser l'approche de la classe aussi, je préférerais:

Add-Type -AssemblyName System.Collections

# Create class with needed members

class myListObject {
    [int]$myIndex
    [System.Collections.Generic.List[string]]$myValue = @()
}

# generic list of class

[System.Collections.Generic.List[myListObject]]$myList = @()

#create and add objects to generic list

$myObject = [myListObject]::new() 
$myObject.myIndex = 1
$myObject.myValue = @( 'value1', 'value2' )

$myList.Add( $myObject )

$myObject = [myListObject]::new() 
$myObject.myIndex = 2
$myObject.myValue = @( 'value3', 'value4' )

$myList.Add( $myObject )


# search items

$myList | Where-Object { $_.myIndex -eq 1 } | Select-Object -Property myValue


$myList | Where-Object { $_.myValue.Contains('value3') } | Select-Object -Property myIndex


0 commentaires

0
votes

La réponse de Windows PowerShell en action. XXX


0 commentaires