我有兩個陣列,我想根據 array1 的每個元素的值回圈遍歷 array1 來獲取 array2 的元素數
$array1 = @(2,1,3)
[System.Collections.ArrayList]$array2 = "string1",'string2','string3','string4','string5','string6'
for ($i=0; $i -lt $array1.Length; $i ) {
$cod_nr = $array1[$i] - 1
for ($x=0; $x -le $cod_nr; $x ) {
... missing logic ...
Basically here I should get first $array1[-] elements of array2 every run
}
(remove array collected element - maybe this step should be in the for loop above)
missing logic
}
基本上,我想獲得以下輸出: 1st run (get 2 elements [array1[0,1]: $my_variable = "string1, string2"
第 2 次運行(獲取 1 個元素 $array1[2] - 如果洗掉元素,則元素數量將改變):$my_variable = "string3"
第 3 次運行(獲取 3 個元素 $array1[3,4,5] - 如果洗掉元素,則元素數量將改變):$my_variable = "string4, string5, string6"
uj5u.com熱心網友回復:
如果我們能夠理解您實際要解決的問題,建議可能會有所不同。
但是,對于您的具體要求,以下是我的處理方式。
$array1 = 2,1,3
[System.Collections.ArrayList]$array2 = "string1",'string2','string3','string4','string5','string6'
foreach($element in $array1){
$my_variable = $array2[0..($element - 1)]
Write-Host my_variable contains $my_variable
$array2.RemoveRange(0,$element)
}
因為你總是想要第一個 X 元素,所以這很容易。只需抓住那些然后將其洗掉。無需使用 for 回圈。
輸出
my_variable contains string1 string2
my_variable contains string3
my_variable contains string4 string5 string6
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/384896.html
標籤:电源外壳
