Bookmark and Share

Svårighetsgrad
Svårighetsgrad
Betyg (7 röster)
BetygBetygBetygBetygBetyg
 

Switch-satsen

Inledning

Är du trött på att skriva många if-satser ibland? Skulle du vilja formulera dig snabbare när du ska undersöka olika alternativ? Då är det dags för dig att titta på switch-satsen.

Switch och case

Switch-satsen påminner om if-satsen men är speciellt konstruerad för att hantera en uppräkning av olika utfall. I switch-satsen definieras en eller flera case-satser som sedan avslutas med nyckelordet break.

Studera följande exempel

Se hur varje case följs av ett värde som direkt kan jämföras med det uttryck som switch-satsen hanterar. I exemplet används variabeln tal. Efter värdet följs ett : och sedan koden som körs när fallet (case) inträffar. Här kan vi ha fler än en rad kod givetvis men sen måste fallet avslutas med ett break och ett semikolon.

Exemplet ovan kan jämföras med en if-sats:

När används switch?

Du bör vara vaksam när du skriver din 3:dje if-sats som testar samma uttryck. Då är det troligtvis läge att skriva om och gå över till en switch-sats. Koden blir, enligt många, mer lättläst. En annan anledning är att kompilatorn faktiskt optimerar bättre när du använder en switch-sats.

Det finns lägen då du inte kan använda switch, t.ex. när du har komplicerade villkor som testar mer än en sak.

Det är främst när du använder operatorn == upprepade gånger i s.k. nästlade if-satser som en switch-sats kan användas. En nästlad if-sats är just en if-sats med en eller flera else if.

Default

Precis som att if-satsen kan avslutas men en else-sats som "fångar upp" övriga fall så har switch-satsen en motsvarighet. Denna motsvarighet heter default och skrivs enligt samma mönster som:

Flera fall - samma resultat

Ibland kan det vara så att två eller fler fall resulterar i samma kod. Detta kan man lösa i en switch-sats genom att skriva på följande vis:

I exemplet ovan så är en inmatning på 3 eller 4 samma case. Det går alltså att stapla flera case på varande med samma avslutande break.

Videogenomgång

Övningar

Övning 1

Skriv ett program där du får ange ett alternativ (heltal). Beroende på alternativ så ska olika saker skrivas ut enligt tabell nedan.
  • 1: "Ett"
  • 2: "Två"
  • 3: "Tre"
  • 4: "Fyra"
  • Övriga alternativ: "Ogiltigt alternativ!"

Övning 2

Skriv ett program där du matar in en bokstav (ett tecken). Du gör ett textäventyr och reagerar på följande vis:
  • N: "You walk north"
  • S: "You travel south"
  • E: "You wander east"
  • W: "You stroll west"
  • Övriga alternativ: "I don't understand!"
N,W,S,E är alltså de olika vädersträcken.

Viktiga begrepp

  • nästlade

Kommentarer

1 inlägg