Ključna razlika – if else vs switch
V programiranju obstajajo strukture odločanja. If else in switch sta dva izmed njih. Izraz je sestavljen iz vrednosti, operatorjev, konstant itd. If else omogoča izvedbo bloka stavkov, če je dani izraz resničen, ali izvedbo neobveznega bloka, če je dani izraz napačen. Stikalo se uporablja za omogočanje vrednosti spremenljivke ali izraza, da spremeni nadzorni tok izvajanja programa prek večsmerne veje. Če želi programer preveriti vrednost posamezne spremenljivke, lahko uporabi stavek switch. Ta članek obravnava razliko med if else in switch. Ključna razlika med if else in switch je v tem, da pri if else izvedbeni blok temelji na oceni izraza v stavku if, medtem ko so pri switchu stavki za izvedbo odvisni od posamezne spremenljivke, ki mu je bila posredovana.
Kaj je, če bi bilo drugače?
If else vsebuje dva bloka. So če in drugače. Blok if vsebuje izraz za ovrednotenje. Če je res, se bodo izvedli stavki znotraj bloka if. Če je pogoj napačen, se bodo izvršili stavki, ki pripadajo bloku else. Programski jeziki vse neničelne in neničelne vrednosti predpostavljajo kot prave. Nič in nič se štejeta za napačni. If in else sta ključni besedi. Zato jih ni mogoče uporabiti kot identifikatorje.
Slika 01: Program s stavki if else
Glede na zgornji program je število spremenljivka, ki lahko shrani cela števila. Vsebuje vrednost 5. V bloku if je izraz preverjen. Če je preostanek 0 po deljenju števila z nič, kar pomeni, da je število sodo. Če je ostanek 1, je število liho. Število 5 je liho. Zato se bo izvedel blok else.
Kaj je stikalo?
Če programer želi preveriti vrednost posamezne spremenljivke, lahko uporabi stikalo. To je izjava o izbiri z več možnostmi. Stikalo ima lahko veliko velikih in malih črk. Ko je spremenljivka posredovana stikalu, se primerja z vrednostjo vsakega primera. Če je ustrezna vrednost najdena, se stavki tega posebnega primera izvedejo. Ti stavki se izvajajo, dokler ne pride do prekinitve. Če stavki case nimajo stavkov break, potem se izvajanje zgodi do konca stavka switch. Privzeti primer se izvede, če nobeden od primerov ni resničen. Privzeta vrednost ne zahteva stavka za prekinitev.
Slika 02: Program s stikalom
V skladu z zgornjim programom vsebujeta num1 in num2 dve celoštevilski vrednosti. Operater je znak. Prenese se na stikalo. Preverja se z vsemi stavki primerov. Podan operator je deljenje. Zato se delitev izračuna in natisne. Nato izvedba prekine stikalo zaradi stavka break. Ko je dosežen odmor, se krmiljenje prenese na naslednjo vrstico po stikalu. Na splošno stavek switch pogosto uporablja ukaz na tipkovnici za izbiro enega izmed več stavkov za velike in male črke.
Kakšna je podobnost med if else in switch?
Tako if else kot switch sta strukturi odločanja v programiranju
Kakšna je razlika med if else in switch?
if else vs switch |
|
if else je nadzorna struktura, ki izvede blok stavkov, če je pogoj resničen, in izvede izbirni blok, če je pogoj napačen. | Stavek switch je vrsta nadzornega mehanizma izbire, ki se uporablja za omogočanje vrednosti spremenljivke ali izraza, da spremeni tok nadzora izvajanja programa preko večsmerne veje. |
Izvedba | |
V if else se izvede blok if ali blok else, odvisno od ovrednotenega izraza. | Stikalo izvaja en primer za drugim, dokler ni dosežen odmor ali do konca stikala. |
Ocena | |
Stavek if ovrednoti cela števila, znake, števila s plavajočo vejico ali logične vrste. | Stavek switch ovrednoti znake in cela števila. |
Privzeta izvedba | |
Če je pogoj bloka if napačen, se bodo izvedli stavki znotraj bloka else. | Če se pri preklopu ne ujema noben od stavkov case, se izvedejo privzeti stavki. |
Testiranje | |
Če sicer preveri enakost in logične izraze. | Stikalo preveri enakost. |
Povzetek – if else vs switch
Dve strukturi odločanja v programiranju sta if else in switch. Stavek if else je pogojni stavek bo zagnal niz stavkov glede na to, ali je pogoj resničen ali napačen. S stikalom lahko preverite eno spremenljivko. Razlika med if else in switch je v tem, da je if else blok izvajanja, ki temelji na oceni izraza v stavku if, medtem ko stavek switch izbere stavke za izvedbo glede na posamezno spremenljivko, ki mu je bila posredovana.