Ebben az oktatóanyagban megismerheti a Java használatával a vezérlőfolyamat-utasításokat, ha és ha… más utasításokat, példák segítségével.
A számítógépes programozásban az if utasítást használjuk a program folyamatának szabályozására. Például, ha egy bizonyos feltétel teljesül, futtasson egy adott kódblokkot. Ellenkező esetben futtasson másik kódot.
Például osztályzatok (A, B, C) kiosztása a hallgató által megszerzett százalék alapján.
- ha ez az arány felett 90 , hozzárendelése grade A
- ha a százalék meghaladja a 75-et , jelölje ki a B fokozatot
- ha a százalék 65 felett van , jelölje ki a C fokozatot
A if… else
Java-ban háromféle állítás létezik .
- ha állítás
- ha … más állítás
- ha… másképp, ha … más állítás
- Beágyazott, ha … más állítás
1. Java if (ha-akkor) nyilatkozat
Az if-then utasítás szintaxisa :
if (condition) ( // statements )
Itt a feltétel logikai kifejezés. Vagy a true
vagy false
.
- ha az állapot értékel, akkor
true
a testen belüli utasításokif
végrehajtásra kerülnek - ha az állapot kiértékeli, akkor
false
a test belsejében lévő kijelentésekif
átugrásra kerülnek
Hogyan működik, ha az utasítás működik?

1. példa: Java if utasítás
class IfStatement ( public static void main(String() args) ( int number = 10; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) System.out.println("Statement outside if block"); ) )
Kimenet
A szám pozitív. Nyilatkozat kívül, ha blokk
A fenti példában létrehoztunk egy szám nevű változót. Figyelje meg a teszt állapotát,
number> 0
Itt a feltétel ellenőrzi, hogy a szám nagyobb-e 0-nál . Mivel a szám nagyobb, mint 0 , az állapot kiértékelődik true
.
Ha a változót negatív egész számra változtatjuk. Mondjuk -5 .
int number = -5;
A program futtatásakor a kimenet a következő lesz:
Statement outside if block
Ennek oka, hogy a szám értéke kisebb, mint 0 . Ennélfogva az állapot kiértékelődik false
. És a if
blokk törzse átugrik.
Megjegyzés : A feltételkifejezés megismeréséhez feltétlenül keresse fel a Java Relational Operators és a Java Logical Operators webhelyeket.
Használhatunk Java stringeket is tesztfeltételként.
2. példa: Java, ha String-el
class Main ( public static void main(String() args) ( // create a string variable String language = "Java"; // if statement if (language == "Java") ( System.out.println("Best Programming Language"); ) ) )
Kimenet
A legjobb programozási nyelv
A fenti példában két karakterláncot hasonlítunk össze a if
blokkban.
2. Java if… else (if-then-else) nyilatkozat
Az if
utasítás végrehajt egy bizonyos kódrészt, ha a teszt kifejezést értékelik true
. Ha azonban a teszt kifejezést értékelik false
, akkor az nem tesz semmit.
Ebben az esetben használhatunk opcionális else
blokkot. A else
blokk törzsén belüli utasításokat akkor hajtjuk végre, ha a teszt kifejezést értékelik false
. Ezt az if-… else utasításnak nevezik a Java-ban.
Az if… else utasítás szintaxisa :
if (condition) ( // codes in if block ) else ( // codes in else block )
Itt a program elvégez egy feladatot (kódokat a if
blokk belsejében ), ha a feltétel megvan, true
és egy másik feladatot (kódokat a else
blokk belsejében ), ha a feltétel megvan false
.
Hogyan működik az if… else utasítás?

3. példa: Java if… else utasítás
class Main ( public static void main(String() args) ( int number = 10; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) // execute this block // if number is not greater than 0 else ( System.out.println("The number is not positive."); ) System.out.println("Statement outside if… else block"); ) )
Kimenet
A szám pozitív. Kijelentés kívül, ha … másképp blokkol
A fenti példában van egy változó számú. Itt a teszt kifejezés number> 0
ellenőrzi, hogy a szám nagyobb-e, mint 0.
Mivel az érték az a szám 10, a vizsgált kifejezés értéke true
. Ezért a kód a testen belül if
végrehajtásra kerül.
Most módosítsa a szám értékét negatív egészre. Mondjuk -5.
int number = -5;
Ha a programot új számértékkel futtatjuk, a kimenet a következő lesz:
A szám nem pozitív. Kijelentés kívül, ha … másképp blokkol
Itt a szám értéke -5. Tehát a teszt kifejezés kiértékeli false
. Ezért a kód a testen belül else
végrehajtásra kerül.
3. Java ha… másképp … ha nyilatkozat
A Java-ban van egy if… else… if létra, amely használható egy kódblokk végrehajtására több más blokk között.
if (condition1) ( // codes ) else if(condition2) ( // codes ) else if (condition3) ( // codes )… else ( // codes )
Itt az if
utasításokat fentről lefelé hajtják végre. Amikor a tesztfeltétel teljesül true
, a if
blokk törzsében lévő kódok végrehajtásra kerülnek. És a programvezérlés az if… else… if létra kívül esik .
Ha az összes tesztkifejezés megfelel false
, akkor a test belsejében lévő kódok else
végrehajtásra kerülnek.
Hogyan működik a… ha másképp … ha létra működik?

4. példa: Java, ha… másképp … ha állítás
class Main ( public static void main(String() args) ( int number = 0; // checks if number is greater than 0 if (number> 0) ( System.out.println("The number is positive."); ) // checks if number is less than 0 else if (number < 0) ( System.out.println("The number is negative."); ) // if both condition is false else ( System.out.println("The number is 0."); ) ) )
Kimenet
A szám 0.
In the above example, we are checking whether number is positive, negative, or zero. Here, we have two condition expressions:
number> 0
- checks if number is greater than 0number < 0
- checks if number is less than 0
Here, the value of number is 0. So both the conditions evaluate to false
. Hence the statement inside the body of else
is executed.
Note: Java provides a special operator called ternary operator, which is a kind of shorthand notation of if… else… if statement. To learn about the ternary operator, visit Java Ternary Operator.
4. Java Nested if… else Statement
A Java-ban az utasításokban is lehet if… else
utasításokat használni if… else
. Beágyazott if… else
utasításnak hívják .
Itt van egy program, amely a beágyazott utasítás segítségével megtalálja a 3 szám közül a legnagyobbat if… else
.
5. példa: Beágyazott, ha… más állítás
class Main ( public static void main(String() args) ( // declaring double type variables Double n1 = -1.0, n2 = 4.5, n3 = -5.3, largest; // checks if n1 is greater than or equal to n2 if (n1>= n2) ( // if… else statement inside the if block // checks if n1 is greater than or equal to n3 if (n1>= n3) ( largest = n1; ) else ( largest = n3; ) ) else ( // if… else statement inside else block // checks if n2 is greater than or equal to n3 if (n2>= n3) ( largest = n2; ) else ( largest = n3; ) ) System.out.println("Largest Number: " + largest); ) )
Kimenet :
Legnagyobb szám: 4.5
A fenti programokban ennek megkönnyítése érdekében mi magunk rendeltük a változók értékét.
A valós alkalmazásokban azonban ezek az értékek származhatnak a felhasználói bemeneti adatokból, naplófájlokból, űrlapküldésből stb.