Arrays Powershell阵列忽略

Arrays Powershell阵列忽略,arrays,powershell,count,Arrays,Powershell,Count,“请原谅我的无知。。。 我使用@($var).Count这样即使$var包含1个“项”,我也可以得到一个计数。 当我的搜索结果为空时,为什么我的数组包含一个项目? i、 e 从 您将创建一个空数组作为$a=@() 要计算元素,您只需执行以下操作 $a.Count $x = @() $x.Count 0 至于处理Get ADGroup的结果,这取决于它返回的内容。我想你会发现这很简单 如果($Groups.Count-等式0){ #过程 } 将为您工作。正如Lee所说,您创建的数组包含一个项,该

“请原谅我的无知。。。 我使用
@($var).Count
这样即使
$var
包含1个“项”,我也可以得到一个计数。 当我的搜索结果为空时,为什么我的数组包含一个项目? i、 e

从 您将创建一个空数组作为
$a=@()

要计算元素,您只需执行以下操作
$a.Count

$x = @()
$x.Count
0
至于处理
Get ADGroup
的结果,这取决于它返回的内容。我想你会发现这很简单 如果($Groups.Count-等式0){ #过程 }
将为您工作。

正如Lee所说,您创建的数组包含一个项,该项为空。这看起来似乎不合逻辑,但这样做是为了在减少或增加数组中的项目数量时提供一致的结果。看看下面的例子。如果
@($null).count
返回
0
,您将从
2
跳到
0

@($null,$null,$null).Count #output 3
@($null,$null).Count #output 2
@($null).Count #output 1
@().Count #output 0
@()
运算符中输入
$null
值也会使此类情况无法处理:

$("a",$null,"c").count #output 3
$("a","b","c").count #output 3

因为您创建的数组只有一个元素-null。
$("a",$null,"c").count #output 3
$("a","b","c").count #output 3