Villkorliga uttalanden i ett datorprogram stöder beslut baserade på ett visst villkor. Om villkoret är uppfyllt, eller "sant", körs en viss kodkod.
Till exempel vill du konvertera användarinmatad text till små bokstäver. Kör koden endast om användaren har skrivit in stor text. Om inte, vill du inte köra koden eftersom den leder till ett runtime-fel.
Det finns två huvudsakliga villkorliga uttalanden som används i Java: if-då och om-då-annars-uttalanden och omkopplarenpåstående.
Det mest grundläggande flödeskontrolluttrycket i Java är if-då: om [något] är sant, gör [något]. Detta uttalande är ett bra val för enkla beslut. Den grundläggande strukturen för ett if-uttalande börjar med ordet "if", följt av uttalandet att testa, följt av lockiga hängslen som lindrar åtgärden att vidta om uttalandet är sant. Det ser ut så här:
if (uttalande) // gör något här ...
Detta uttalande kan också utvidgas till att göra något annatom villkoret är felaktigt:
if (uttalande) // gör något här ...
annars // gör något annat ...
Om du till exempel bestämmer om någon är gammal nog att köra kan du ha ett uttalande som säger "om din ålder är 16 år eller äldre kan du köra, annars kan du inte köra."
int ålder = 17;
om ålder> = 16 System.out.println ("Du kan köra.");
annat System.out.println ("Du är inte tillräckligt gammal för att köra.")
Det finns ingen begränsning för antalet andra uttalanden du kan lägga till.
I exemplet ovan använde vi en enda operatör. Dessa är de standardoperatörer du kan använda:
Utöver dessa finns det ytterligare fyra operatörer som används med villkorade uttalanden:
Exempelvis anses köråldern vara från 16 ålder till 85 år, i vilket fall AND-operatören kan användas.
annars om (ålder> 16 && ålder < 85 )
Detta kommer att gälla endast om båda villkoren är uppfyllda. Operatörerna INTE, ELLER, och ÄR JÄMFÖRT kan användas på liknande sätt.
Bytetuttalande ger ett effektivt sätt att hantera ett avsnitt av koden som kan grenas i flera riktningar baserat på en endavariabel. Det stöder inte de villkorade operatörerna som ifall då-påståendet gör, och det kan inte heller hantera flera variabler. Det är emellertid ett föredraget val när villkoret uppfylls av en enda variabel eftersom det kan förbättra prestanda och är lättare att underhålla.
Här är ett exempel:
switch (singel_variabel) case value: // code_here;
ha sönder;
case-värde: // code_here;
ha sönder;
standard: // ställa in en standard;
Observera att du börjar med omkopplaren, tillhandahåller en enda variabel och sedan anger dina val med termen fall. Nyckelordet ha sönder slutför varje fall i switch-uttalandet. Standardvärdet är valfritt, men god praxis.
Till exempel skrivs denna switch lyriken till låten Twelve Days of Christmas som ges en given dag.
int dag = 5;
Stränglyrisk = ""; // tom sträng för att hålla lyriken
switch (dag) fall 1:
lyric = "En patridge i ett päronträd.";
ha sönder;
fall 2:
lyric = "2 sköldpaddsduvor";
ha sönder;
fall 3:
lyric = "3 franska höns";
ha sönder;
fall 4:
lyric = "4 kallande fåglar";
ha sönder;
fall 5:
lyric = "5 guldringar";
ha sönder;
fall 6:
lyric = "6 gäss-läggning";
ha sönder;
fall 7:
lyric = "7 swans-a-swimming";
ha sönder;
fall 8:
lyric = "8 piga-a-mjölkning";
ha sönder;
fall 9:
lyric = "9 damer som dansar";
ha sönder;
fall 10:
lyric = "10 Lords-a-jumping";
ha sönder;
fall 11:
lyric = "11 pipers piping";
ha sönder;
fall 12:
lyric = "12 trummis trumma";
ha sönder;
standard:
lyric = "Det finns bara 12 dagar.";
ha sönder;
System.out.println (lyric);
I det här exemplet är värdet som ska testas ett heltal. Java SE 7 och senare stöder ett strängobjekt i uttrycket. Till exempel:
String day = "second";
Stränglyrisk = ""; // tom sträng för att hålla lyriken
växla (dag)
fall "först":
lyric = "En patridge i ett päronträd.";
ha sönder;
fall "andra":
lyric = "2 sköldpaddsduvor";
ha sönder;
fall "tredje":
lyric = "3 franska höns";
ha sönder;
// etc.