シーケンシャル文字列で配列を作成するために、次のコードを書いています。 それは私が期待するように動作しますが、私はそれがより速く走ったことを望みます。 PowerShellで目的の結果を生成するための効率的な方法はありますか?シーケンシャル文字列を配列に素早く構築する
私はPowerShellの新機能で、指導に感謝します。 $ARRAY
の
$MIN = 1
$MAX = 20000
$ARRAY = @()
$PREFIX = "AA"
$startDTM = (Get-Date) # Start time
FOR ($i=$MIN; $i -le $MAX; $i++)
{
If ($i -gt 0 -and $i -lt 10) {
$ARRAY = $ARRAY + ($PREFIX+"00000"+$i)
}
If ($i -gt 9 -and $i -lt 100) {
$ARRAY = $ARRAY + ($PREFIX+"0000"+$i)
}
If ($i -gt 99 -and $i -lt 1000) {
$ARRAY = $ARRAY + ($PREFIX+"000"+$i)
}
If ($i -gt 999 -and $i -lt 10000) {
$ARRAY = $ARRAY + ($PREFIX+"00"+$i)
}
If ($i -gt 9999 -and $i -lt 100000) {
$ARRAY = $ARRAY + ($PREFIX+"0"+$i)
}
If ($i -gt 99999 -and $i -lt 1000000) {
$ARRAY = $ARRAY + ($PREFIX+$i)
}
}
$endDTM = (Get-Date) #End Time
"Elapsed Time: $(($endDTM-$startDTM).totalseconds) seconds"
$ARRAY.count #How many loaded.
例:
AA000001
AA000002
...
AA019999
AA020000
アレイの連結は、毎回配列を再作成する際にループ内で使用しないでください。 – wOxxOm