目前我遇到了一个问题,涉及一个脚本,它根据传递给它的一组动态服务器\优先级来构建数组。例如,基于以下输入:
server1,200
server2,200
我想要建立一个类似于
$arr=@() #at this point I have an empty array
$arr+=@("server1",200) #at this point, I would expect to have an array
#that itself holds another array
然而,此时运行此代码会得到意外的输出。
echo $arr.count # result is 2, rather than the 1 I would expect
# It appears to be treating $arr as a single array
# with two members (server1 and 200) rather than an array
# that holds an array, which itself has two members
然而,如果我向我的数组中添加另一个空数组:
$arr = @()
$arr += @()
$arr += $("server1",200)
$arr.count # output is 2, which is the desired result
我得到了我想要的结果。我的问题是,我能否只使用一个数组来获得我的期望的不规则/多维数组的结果?这并不是一个常见的情况,因为大多数时候我会处理多组项目,但我想考虑所有情况,这可能是其中之一。我只是希望不必添加额外的步骤来过滤掉空数组以满足这个条件。
任何建议都将不胜感激。