Ошибка в PowerShell при использовании массивов
Пока я пытаюсь присвоить значение конкретному индексу массива, он показывает ошибки.PS /home/mifi> $names = @()
PS /home/mifi> $names[1]="abc"
Index was outside the bounds of the array.
At line:1 char:1
+ $names[1]="abc"
+ ~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (:) [], IndexOutOfRangeException
+ FullyQualifiedErrorId : System.IndexOutOfRangeException
pwsh -v
PowerShell v6.0.2
`
1 ответ
Решение
Это потому, что вы должны сначала инициализировать массив. Если вы знаете размер массива, вы можете сделать это следующим образом:
$arraySize = 10
$names= 1..$arraySize | foreach { $null }
Рассмотрите возможность использования хеш-таблицы:
$names = @{}
$names[1] = "abc"