我对Powershell很陌生并且正在开发一个带有函数的小项目。 我要做的是创建一个带有2个参数的函数。 第一个参数($ Item1)决定数组的大小,第二个参数($ Item2)决定索引的值。
所以,如果我写:$ addToArray 10 5 我需要该函数来创建一个包含10个索引的数组,每个索引的值为5。第二个参数也必须将“text”作为值。
到目前为止,这是我的代码。
$testArray = @();
$indexSize = 0;
function addToArray($Item1, $Item2)
{
while ($indexSize -ne $Item1)
{
$indexSize ++;
}
Write-host "###";
while ($Item2 -ne $indexSize)
{
$script:testArray += $Item2;
$Item2 ++;
}
}
感谢任何帮助。
亲切的问候 丹尼斯伯恩森
答案 0 :(得分:1)
有很多方法可以实现这一目标,这是一个简单的方法(长版):
function addToArray($Item1, $Item2)
{
$arr = New-Object Array[] $Item1
for($i=0; $i -lt $arr.length; $i++)
{
$arr[$i]=$Item2
}
$arr
}
addToArray 10 5
答案 1 :(得分:1)
这是另一种可能性:
function addToArray($Item1, $Item2)
{
@($Item2) * $Item1
}
答案 2 :(得分:1)
另一个。
function addToArray($Item1, $Item2) {
#Counts from 1 to your $item1 number, and for each time it outputs the $item2 value.
(1..$Item1) | ForEach-Object {
$Item2
}
}
#Create array with 3 elements, all with value 2 and catch/save it in the $arr variable
$arr = addToArray 3 2
#Testing it (values under $arr is output)
$arr
2
2
2