Přejít na obsah

#7 switch [*]

tut tutorial Pawn samp switch case default rozsah range

  • Pokud chcete odpovědět, přihlaste se
Žádné odpovědi

#1
vEnd

vEnd

    Emmet

  • Globální moderátor
  • Příspěvků: 606

Obtížnost: :1:

 

Osnova:

1. Úvod, co je to switch

2. Kdy a jak použít switch

3. Další možnosti case

4. Ukázky použití

5. Závěr

 

1. Úvod

Zdravím Vás u sedmého návodu pro začínající pawnery. Tímto navážeme na minulý návod (přečtěte si ho) a rozebereme si, k čemu slouží switch a kdy jej použít namísto normálních podmínek.

 

Napřed ale co je to ten switch. Switch (česky přepínač) je struktura, která v konkrétním případě nahrazuje soustavu if – else if – else. Jeho účelem je vykonat ten blok, který odpovídá jeho hodnotě. Proto také přepínač, obecně se dá říct, že přepne na blok dané hodnoty.

 

2. Kdy a jak použít switch

Už jsem řekl, že se používá v konkrétním případě. Tím případem je tato soustava podmínek:

.

new cislo = 2;

if(cislo == 1)
{
    //hodnota je 1
}
else if(cislo == 2)
{
    //hodnota je 2
}
else if(cislo == 3)
{
    //hodnota je 3
}
else
{
    //hodnota je jiná
}

.

Pokud v podmínkách porovnáváme takto hodnoty, lze k tomu použít kratší a přehlednější switch. Syntaxe switche je následovná:

.

switch(cislo)
{
    case 1:
    {
        //hodnota je 1
    }
    case 2:
    {
        //hodnota je 2
    }
    case 3:
    {
        //hodnota je 3
    }
    default:
    {
        //hodnota je jiná
    }
}

.

Do závorek switche jsme dosadili proměnnou, ze které zjišťuje hodnotu. case je klíčové slovo, které nám zde tvoří větev pro konkrétní hodnotu. Jak je vidět, nahrazuje nám else if a podmínku. Na jedno si musíme dát pozor – je potřeba za case a hodnotu uvést dvojtečku. default je bez hodnoty a plní funkci else – provede se vždy, když hodnota neodpovídá žádnému case. Narozdíl od case ale není nutné jej použít.

 

3. Další možnosti case

Switch dokáže pracovat jak s celými čísly, tak se znaky a desetinnými čísly.

.

case 1: //zápis pro celé číslo
case 'a': //zápis pro znak
case 3.14: //zápis pro desetinné číslo

.

Jazyk nám též umožňuje zapsat v jednom case několik hodnot, když je to třeba, stačí je oddělit čárkou.

.

case 1, 3, 5: //několika celých čísel
case 'a', 'b', 'c': //několik znaků
case 3.14, 1.4, 8.2: //několik desetinných čísel (tečka je desetinná čárka)

.

Pro zajímavost (rozklikněte spoiler):

Spoiler

.

4. Ukázky použití

Před koncem si ještě ukážeme pár příkladů, jak switch používat.

 

Dialogy

Spoiler

.

Kombinovaný zápis

Spoiler

.

5. Závěr

Switchem jsme definitivně ukončili téma podmínek. Kromě if, else if a else teď znáte už i switch a víte, kdy a jak ho použít. Poslední varování na závěr: v jiných jazycích (C/C++, C#, Java, Javascript, PHP atd.) se blok case a default ukončuje klíčovým slovem break a neuvádějí se složené závorky. Pro Pawn to prostě neplatí, takže tuto syntaxi si nechte pro ostatní jazyky.

 

Tento návod, stejně jako ty předchozí, je určen pro nováčky, pokročilejší věci byly buďto úplně vynechány, nebo jsou uvedeny ve spoilerech. Přesto, zdá-li se Vám, že jsem něco opomněl, někde jsem se spletl nebo se jen chcete vyjádřit, pište do tohoto tématu.

 

Ověřený návod

Tento návod prošel validací, a lze ho proto považovat za ověřený.


  • 3


96b259ac47244701b5097887d9439120.png

I always enjoy meeting people more chemically imbalanced than myself. -Trevor Philips
It's hard to follow the train when you are hauling two number nines; a number nine large; a number six with extra dip; a number seven; two number 45s, one with cheese; and a large soda. -guess who






Také označeno jedním nebo více klíčovými slovy: Návod, tut, tutorial, Pawn, samp, switch, case, default, rozsah, range

0 uživatelů si prohlíží toto fórum

0 uživatelů, 0 návštěvníků 0 anonymních uživatelů

© 2015 IPS, Inc.

Zajímat Vás mohou ještě aktuální zprávy. sleviště, slevy dnes Herbalife je skvělou cestou pro dobré zdraví. Je libo dětský web?