Ako sme sa už dozvedeli v predchádzajúcich kapitolách, môžeme riadiť tok vykonávania aplikácie na základe určitých podmienok. Existuje niekoľko vyhlásení, ktoré možno použiť na rovnaký účel. V časti 4 sme videli, že môžeme použiť "if statement" na testovanie vstupu používateľov za rôznych podmienok. Tiež sme sa dozvedeli o operátoroch, vyjadreniach, vyhláseniach v časti 5.
V tejto kapitole sa dozvieme viac o jednom vyhlásení, ktoré môže byť použité ako alternatíva k "vyhláseniu if" a podmienený operátor ekvivalentom "if statement".
Funkcia " prepínač"Je flexibilný náhradník pre" if statement ", ale iba ak potrebujeme otestovať číselné podmienky. Použitie prepínača nám pomáha obísť bloky kódov, ktorých hodnota nespĺňa podmienky. Vytvoríme príkladový projekt, ktorý vám umožní dokonalé pochopenie.
Môžete otvoriť našu starú aplikáciu vyvinutú v "if statement" alebo inak môžete dokonca stiahnuť projekt, ktorý som vytvoril pre tento výukový program. Teraz dúfam, že ste otvorili náš starý projekt alebo stiahli svoj projekt. Ako obvykle dvojitým kliknutím na tlačidlo Odoslať prejdite na udalosť kliknutia tohto tlačidla. Začneme s podmieneným operátorom namiesto predchádzajúceho príkazu if pre rovnaký príklad. Napíšte nasledujúci kód do udalosti button_click.
string message = (txtInput.Text == '1') ? 'Boat': 'Car';
txtResult.Text = 'You won a ' +message;
Áno, to je ono. Teraz skúste spustiť program a skontrolujte, či funguje. Pracuje úplne rovnako ako predtým? Toto je moc operátorov (?).
Keď chceme skontrolovať stav a na základe výsledku ukázať výsledok, môžeme tieto dva operátory spoločne použiť na vytvorenie efektu "if-else". V prvej zátvorke sme definovali náš stav (na kontrolu vstupu od užívateľa, či je rovný 1 alebo nie), ktorému predchádza a “?”, Ak je to pravda, potom prvá hodnota predchádza “?” budú uložené v našej reťazovej promennej, ale ak výsledok bude výsledkom falošnej, predchádzajúca hodnota “:” budú uložené. Môžete vidieť, koľko úderov môže ušetriť, ak ju správne používame!
Teraz vysvetlite tento kód a obráťte sa na "switch statement". Skopírujte nasledujúci kód a vložte ho do udalosti button_click ako predtým.
string message = '';
switch (txtInput.Text)
{
case '1':
message = 'You won a new car!';
break;
case '2':
message = 'You won a new boat!';
break;
case '3':
message = 'You won a new cat!';
break;
default:
message = 'Sorry, we didn't understand your response. You lose.';
break;
}
txtResult.Text = 'You won a ' +message;
Teraz skúste spustiť program. Zistíte, že tento program funguje rovnako ako predchádzajúci. Toto je funkcia prepínača.
Ak sa stane, že programy nemôžu nájsť žiadnu hodnotu prípadu zodpovedajúcu podmienke, predvolené vyhlásenie pracuje ako konečné "else" vyhlásenie a kód bloku pred "default" bude vykonaný.
Jedna vec by mala byť zaznamenaná tu a to je " break statement"Po každom prípade. Pomáha programovať, aby sa vypustil z "prepnutia" po vykonaní prípadu.
Všetko o príkaze "switch" nájdete tu.
Teraz máte vo svojom arzenáli 3 zbrane, ktoré kontrolujú program založený na rozhodnutiach, ovládate všetky, až sa vrátime s ďalším tutoriálom, kde sa dozvieme o "pre iteračné a slučky".