Intro
hur många gånger använder du IF-ELSE uttalanden med mer än 4 ELSEIF villkor? Jag vill visa dig jämförelse SWITCH vs IF uttalanden i Powershell. Varför ska du överväga att använda SWITCH-uttalandet? Kolla in det här.
För det första, låt oss kolla, vad är Powershell SWITCH uttalande.
vad är PowerShell Switch-uttalanden
ibland måste du bearbeta många enskilda villkor. Jag är säker på att de flesta av Powershell nybörjare användare kommer att välja om-ELSEIF-ELSE uttalanden. Här är ett alternativt sätt att göra detta med SWITCH-uttalanden. Låt oss kolla ett exempel – bestämma fordon med hjul räkna.
$WheelsCount = 4if ($WheelsCount -eq 4) {Write-Host "it's a car"}`elseif ($WheelsCount -eq 2) {Write-Host "it's a bike"}`elseif ($WheelsCount -eq 0) {Write-Host "it's a boat"}`else {Write-Host "Unknow"}
$WheelsCount = 4switch ($WheelsCount) { 4 {Write-Host "it's a car"}` 2 {Write-Host "it's a bike"}` 0 {Write-Host "it's a boat"}` default {Write-Host "Unknow"}}
PowerShell switch vs if
kanske du undrar varför du ska använda Switch uttalanden. Vad är skillnaden mellan Powershell SWITCH vs IF uttalanden. Du kan alltid använda if-ELSE villkor. Jag rekommenderar dock att du använder SWITCH uttalanden av några skäl.
För det första bör du välja att använda SWITCH-uttalanden eftersom det i vissa scenarier är snabbare.
Jag kommer att använda samma exempel som jag använde tidigare för att testa dessa uttalanden hastighet.
som du kan se i det här exemplet, IF-ELSE uttalanden är snabbare. Låt oss kolla vad som hände om jag lägger till fler villkor i dessa exempel och ändrar variabel till strängtyp.
som ett resultat är omkopplingsuttalandet snabbare för fler förhållanden men resultatet är liknande.
Om du har mer än 4 villkor i Powershell-skriptet rekommenderar jag att du överväger användningen av SWITCH-uttalanden.
en annan anledning att överväga
en annan anledning att överväga att använda SWITCH-uttalandena är att Powershell-koden är lättare att förstå. Det hjälper till att ändra koden snabbare och minska antalet fel.
Du måste dock komma ihåg att du inte kan ersätta alla villkor med SWITCH-uttalanden. Det hjälper dig bara att testa uttryck med ett enda värde. Du kan till exempel inte använda den för att kontrollera om värdet är större. För att göra detta måste du använda if-ELSE-uttalandet.
slutsats
Jag hoppas att jag förklarar varför du bör överväga att använda SWITCH-uttalanden i dina Powershell-skript.
för att läsa mer om Switch uttalanden rekommenderar jag att du besöker Microsoft dokumentationssida eller bra artikel om powershellexplained.com.