Betingede udsagn i et computerprogram støtte beslutninger baseret på en bestemt betingelse. Hvis betingelsen er opfyldt, eller "sand", udføres et bestemt stykke kode.
For eksempel vil du konvertere brugerindtastet tekst til små bogstaver. Udfør kun koden, hvis brugeren har indtastet stor bogstaver. Hvis ikke, vil du ikke udføre koden, fordi den vil føre til en runtime-fejl.
Der er to hovedbetingede udsagn, der bruges i Java: if-then og hvis-så-ellers udsagn og switchstatement.
Erklæringerne If-Then og If-Then-Else
Det mest basale udsagn om strømningskontrol i Java er if-then: hvis [noget] er sandt, skal du gøre [noget]. Denne erklæring er et godt valg til enkle beslutninger. Den grundlæggende struktur i en if-sætning starter med ordet "hvis" efterfulgt af udsagnet til test, efterfulgt af krøllede seler, der ombryder handlingen, der skal træffes, hvis udsagnet er sandt. Det ser sådan ud:
hvis (erklæring) {// gør noget her ...}
Denne erklæring kan også udvides til at gøre noget andet, hvis betingelsen er falsk:
hvis (erklæring) {// gør noget her ...}
andet {// gør noget andet ...}
For eksempel, hvis du bestemmer, om nogen er gammel nok til at køre, har du muligvis en erklæring, der siger "hvis din alder er 16 år eller ældre, kan du køre; ellers kan du ikke køre. "
int alder = 17;
hvis alder> = 16 {System.out.println ("Du kan køre.");}
andet {System.out.println ("Du er ikke gammel nok til at køre.")
Der er ingen grænse for antallet af andre udsagn, du kan tilføje.
Betingede operatører
I eksemplet ovenfor brugte vi en enkelt operatør. Dette er de standardoperatører, du kan bruge:
- lig med: =
- mindre end: <
- mere end:>
- større end eller lig med:> =
- mindre end eller lig med:> =
Derudover er der fire mere operatører brugt med betingede udsagn:
- og: &&
- ikke:!
- eller: ||
- er lig med: ==
F.eks. Anses kørealderen for at være fra 16 til 85 år, i hvilket tilfælde AND-operatøren kan bruges.
ellers hvis (alder> 16 && alder <85)
Dette vil kun vende tilbage, hvis begge betingelser er opfyldt. Operatørerne NOT, OR og IS LIKE TIL kan bruges på en lignende måde.
Skifterklæringen
Det switchstatement giver en effektiv måde at håndtere et afsnit af kode, der kunne forgrene sig i flere retninger baseret på en enkeltvariabel. Det understøtter ikke de betingede operatører, hvis-da-sætningen gør, og den kan heller ikke håndtere flere variabler. Det er dog et foretrukket valg, når betingelsen opfyldes af en enkelt variabel, fordi den kan forbedre ydelsen og er lettere at vedligeholde.
Her er et eksempel:
switch (single_variable) {case value: // code_here;
pause;
sagværdi: // kode_her;
pause;
standard: // indstil en standard;}
Bemærk, at du starter med kontakten, giver en enkelt variabel og derefter angiver dine valg ved hjælp af udtrykket sag. Nøgleordet pause afslutter hvert enkelt tilfælde af switch-erklæringen. Standardværdien er valgfri, men god praksis.
F.eks. Udskriver denne switch lyrikken til sangen Twelve Days of Christmas, der er givet en leveret dag.
int dag = 5;
Strenglyrisk = ""; // tom streng for at holde lyrikken
switch (dag) {sag 1:
lyric = "En patridge i et pæretræ.";
pause;
sag 2:
lyrisk = "2 skildpadde duer";
pause;
sag 3:
lyrisk = "3 franske høner";
pause;
sag 4:
lyric = "4 kaldende fugle";
pause;
sag 5:
lyrisk = "5 guldringe";
pause;
sag 6:
lyrisk = "6 gæs-a-æglæggende";
pause;
sag 7:
lyric = "7 svaner-en-svømning";
pause;
sag 8:
lyrisk = "8 maids-a-malkning";
pause;
sag 9:
lyric = "9 damer danser";
pause;
sag 10:
lyric = "10 Lords-a-jumping";
pause;
sag 11:
lyric = "11 pipere piping";
pause;
sag 12:
lyric = "12 trommeslagere trommer";
pause;
Standard:
lyric = "Der er kun 12 dage.";
pause;
}
System.out.println (lyrisk);
I dette eksempel er værdien, der skal testes, et heltal. Java SE 7 og senere understøtter et strengobjekt i udtrykket. For eksempel:
String day = "second";
Strenglyrisk = ""; // tom streng for at holde lyrikken
skifte (dag) {
sag "først":
lyric = "En patridge i et pæretræ.";
pause;
sag "andet":
lyrisk = "2 skildpadde duer";
pause;
sag "tredje":
lyrisk = "3 franske høner";
pause;
// etc.