about_Booleans
Rövid leírás
A logikai kifejezések kiértékelésének módját ismerteti.
Hosszú leírás
A PowerShell implicit módon bármilyen típust logikaiként kezelhet. Fontos megérteni azokat a szabályokat, amelyeket a PowerShell más típusok logikai értékekké alakításához használ.
Konvertálás skaláris típusokból
A skaláris típus olyan atomi mennyiség, amely egyszerre csak egy értéket tartalmazhat. A következő típusok kiértékelése:$false
- Üres sztringek, például
''
vagy""
- Null értékek, például
$null
- Bármely numerikus típus, amelynek értéke a következő:
0
Példák:
PS> $false -eq ''
True
PS> if ("") { $true } else { $false }
False
PS> if ($null) { $true } else { $false }
False
PS> if ([int]0) { $true } else { $false }
False
PS> if ([double]0.0) { $true } else { $false }
False
A következő típusok kiértékelése:$true
- Nem üres sztringek
- Egyéb nem gyűjtemény típusú példányok
Példák:
# a non-collection type
PS> [bool]@{value = 0}
True
# non-empty strings
PS> if ('hello') { $true } else { $false }
True
PS> [bool]'False'
True
Vegye figyelembe, hogy ez eltér az explicit sztring elemzésétől:
PS> [bool]::Parse('false')
False
PS> [bool]::Parse('True')
True
PS> [bool]::Parse('Not True')
MethodInvocationException: Exception calling "Parse" with "1" argument(s):
"String 'Not True' was not recognized as a valid Boolean."
Átalakítás gyűjteménytípusokból
A tömbök a PowerShell leggyakoribb gyűjteménytípusai. Ezek a szabályok az IList-felületet megvalósító gyűjteményszerű típusokra vonatkoznak .
- Az üres gyűjtemények mindig
$false
- A parancs
[System.Management.Automation.Internal.AutomationNull]::Value
kimenetének hiányát jelző speciális null érték mindig$false
az . - Az egyelemes gyűjtemények egyetlen és egyetlen elem logikai értékének kiértékelése.
- Az 1-nél több elemet tartalmazó gyűjtemények mindig
$true
.
Példák:
# Empty collections
PS> [bool]@()
False
PS> [bool](Get-ChildItem | Where-Object Name -eq 'Non-existent-File.txt')
False
# Single-element collections
PS> $a = @(0)
PS> [bool]$a
False
PS> $b = @(1)
PS> [bool]$b
True
# Multi-element collections
PS> $c = @(0,0)
PS> [bool]$c
True
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: