gpt4 book ai didi

powershell - 如何检查集合是否具有空引用

转载 作者:行者123 更新时间:2023-12-02 23:24:37 25 4
gpt4 key购买 nike

我刚刚发现,当您对集合应用bool运算符时,它将充当该集合的过滤器。

因此,以下将返回所有不为null的元素:

$objectArray = @('a','b','c','d')
$objectArray -ne $null

但是,如何检查集合的引用是否为null?

最佳答案

特雷弗·沙利文(Trevor Sullivan)的if ()测试强制将$objectArray转换为 bool(boolean) 值。

[bool]$null     #is $false
[bool]@(1,2,3) # is $true , so it looks good.

但是空数组会误导它:
[bool]@()       # is $false , so it's not an accurate test.

Example screenshot of testing an empty array

我建议 $null -eq $objectArray:

Example of using $null -eq $objectArray

注意确实,这确实引发了一个问题,即为什么您想知道它是否为$ null。特雷弗(Trevor)的答案很典型,足以应付任何常见用途。

注意我的答案包括一个不常见但有用的建议-如果比较的一侧具有字面值,请尽可能将其放在左侧。
0 -lt $counter
$null -eq $thing
"text" -eq $variable
4 -in $collection

它不那么常见,因此看起来也不那么熟悉,但是对于PowerShell隐式强制执行您意料之外的事情而言,它更具 flex 。

关于powershell - 如何检查集合是否具有空引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40393397/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com