為什么這個運算式回傳 False 而不是 True ?
$true -or $false -and $false
-and應該優先-or,正如Microsoft Powershell 檔案所確認的那樣。
但看起來運算式被評估為($true -or $false) -and $false而不是$true -or ($false -and $false)!
有人可以向我解釋我在這里缺少什么嗎?
uj5u.com熱心網友回復:
鏈接的檔案中則未狀態下-and的優先級高于-or-代替,它指出-and和-or-或許令人驚奇的[1] -具有等于優先級[2]在PowerShell中。
因此:
$true -or $false -and $false
是 - 由于隱含的左結合性 - 評估為:
($true -or $false) -and $false # -> $false
換句話說: 用于(...)按需覆寫此左結合:
$true -or ($false -and $false) # -> $true
[1] 有關討論,請參閱GitHub 問題 #8512。
[2]的檔案串列-and -or -xor上的同一條線上,這意味著,所有這些運算子具有相等的優先級。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/323339.html
標籤:电源外壳
