【发布时间】:2017-02-02 02:40:00
【问题描述】:
我正在尝试使用 PowerShell (5.0) 划分工作块,并且很难实例化多维数组。
$n = 456;
$MaxChunks = 6;
$Chunks = @();
for($x = 0; $x -lt $MaxChunks; $x++)
{
Write-Host "Creating chunk $x"
$Chunks += @();
}
$Chunks.Count 始终返回 0,我无法按索引访问 $Chunks 中的任何内容(即 $Chunks[0] 为空)。
最终,我的目标是访问位于$Chunks[$i] 的数组并向其中添加多个System.Data.DataRow 对象。但是,正如我所说,我无法访问该索引处的数组,因为该数组从未实例化。
【问题讨论】:
-
您在第二个链接中看到this answer 了吗?这可能就是您需要的信息。
-
$Chunks = ,@() * $MaxChunks -
@PetSerAl,它将重用相同的对象实例。虽然如果 OP 使用
+=填充这些子数组,这不会有问题,因为+=重新创建了数组。 -
@wOxxOm 零长度数组实际上是只读的,所以(除了引用相等)它是否重用并不重要。
-
This question 可能会有答案。
标签: arrays powershell multidimensional-array