1. Rækkefølge af if
udsagn
Nogle gange skal et program udføre mange forskellige handlinger afhængigt af værdien af en variabel eller værdien af et udtryk.
Lad os sige, at vores opgave er sådan her:
- Hvis temperaturen er større end
20
grader, så tag en skjorte på - Hvis temperaturen er større end
10
grader og mindre end (eller lig med)20
, så tag en sweater på - Hvis temperaturen er større end
0
grader og mindre end (eller lig med)10
, så tag en regnfrakke på - Hvis temperaturen er mindre end
0
grader, så tag en frakke på.
Sådan kan dette repræsenteres i kode:
int temperature = 9;
if (temperature > 20)
System.out.println("put on a shirt");
else // Here the temperature is less than (or equal to) 20
{
if (temperature > 10)
System.out.println("put on a sweater");
else // Here the temperature is less than (or equal to) 10
{
if (temperature > 0)
System.out.println("put on a raincoat");
else // Here the temperature is less than 0
System.out.println("put on a coat");
}
}
If-else
udsagn kan indlejres i hinanden. Dette gør det muligt at implementere ret kompleks logik i et program.
Men ovenstående eksempel er også interessant, fordi vi kan gøre koden lidt enklere ved at udelade de krøllede seler:
int temperature = 9;
if (temperature > 20)
System.out.println("put on a shirt");
else // Here the temperature is less than (or equal to) 20
if (temperature > 10)
System.out.println("put on a sweater");
else // Here the temperature is less than (or equal to) 10
if (temperature > 0)
System.out.println("put on a raincoat");
else // Here the temperature is less than 0
System.out.println("put on a coat");
Imidlertid skriver programmører normalt denne konstruktion lidt anderledes:
int temperature = 9;
if (temperature > 20)
System.out.println("put on a shirt");
else if (temperature > 10) // Here the temperature is less than (or equal to) 20
System.out.println("put on a sweater");
else if (temperature > 0) // Here the temperature is less than (or equal to) 10
System.out.println("put on a raincoat");
else // Here the temperature is less than 0
System.out.println("put on a coat");
Alle disse tre eksempler er ækvivalente.
2. Nuancer af else
blokken
Hvis du ikke bruger krøllede seler i en if-else
konstruktion, så else
refererer den til den nærmeste forrige if
.
Eksempel:
Vores kode | Hvordan vil det fungere |
---|---|
|
|
Hvis du ser på koden til venstre, ser det ud til, at skærmoutputtet bliver "Du behøver ikke arbejde". Men det er ikke tilfældet. I virkeligheden else
er blokken og "Du behøver ikke arbejde"-erklæringen forbundet med den anden (den tættere) if
sætning.
I koden til højre er de tilhørende if
og else
fremhævet med rødt. Derudover er de krøllede seler placeret utvetydigt, hvilket tydeligt viser, hvilke handlinger der vil blive udført. Vises strengen, du ikke behøver at arbejde, aldrig, når age
er større end 60
?
3. Eksempel på brug af et if-else
udsagn
Da vi har udforsket erklæringen if-else
så godt, lad os give et eksempel:
import java.util.Scanner;
public class Solution {
public static void main(String[] args)
{
Scanner console = new Scanner(System.in); // Create a Scanner object
int a = console.nextInt(); // Read the first number from the keyboard
int b = console.nextInt(); // Read the second number from the keyboard
if (a < b) // If a is less than b
System.out.println(a); // we display a
else // otherwise
System.out.println(b); // we display b
}
}
GO TO FULL VERSION