PowerShell中`-Contains`和`-In`有什么区别?

时间:2015-08-06 20:11:02

标签: powershell

除了明显反转参数顺序之外,-Contains运算符和PowerShell 3.0的新-In运算符之间有什么区别?

2 个答案:

答案 0 :(得分:6)

简而言之,您尚未描述过没有区别。

不同之处在于左侧与右侧的值:

$arr = @(4,5,6)

$arr -contains 5
5 -in $arr

另一个区别是PowerShell 3.0中引入了-in,因此它无法在早期版本上运行。

它主要是一种风格的东西;使用对特定情况感觉更自然的那个。

答案 1 :(得分:2)

同样但不同......

-contains检查数组是否包含值:

$Array -contains $value

-in检查数组中的值是否为

$value -in $Array

示例:

$Array = 1..5

$Array -Contains 4
True

4 -in $Array
True