2015-08-06 14 views

Odpowiedz

5

Krótko mówiąc, nie ma żadnej różnicy, której jeszcze nie opisano.

Różnica polega na tym, która wartość jest po lewej vs. prawej stronie:

$arr = @(4,5,6) 

$arr -contains 5 
5 -in $arr 

Drugą różnicą jest to, że został wprowadzony w -in PowerShell 3.0, więc to nie będzie działać we wcześniejszych wersjach.

To przede wszystkim styl; użyj tej, która wydaje się bardziej naturalna w konkretnej sytuacji.

+0

PowerShell przyjmuje P Erl's "TMTOWTDI" całym sercem, jak sądzę. –

+0

@ Briantist Wiem, że '-contains' nie działa z notacją wieloznaczną. Na podstawie Twojego wpisu '-in' też nie? – Speerian

+1

@Sperian, jeśli masz na myśli używanie składni "jak" w łańcuchu takim jak "jabłko", "chwytanie", "bot" - zawiera "* pple'", to jest poprawne; nie działa też z '-in'. – briantist

1

Dwa sposoby Przeciwieństwa, które robią to samo.

Aby sprawdzić, czy wartość istnieje w tablicy albo jeśli tablica jest Zawiera pewne wartości

contains operatora:

$Array -contains $value 

Operator in:

$value -in $Array 

Przykład

$Array = 1,2,3,4,5 

$Array -Contains 4 
True 

4 -in $Array 
True 
Powiązane problemy