1. Az if-elseállítás

A programok nem lennének nagyon hasznosak, ha mindig ugyanazt csinálnák, függetlenül attól, hogy a külső körülmények hogyan változnak. Egy programnak képesnek kell lennie a különböző helyzetekhez alkalmazkodni, és bizonyos helyzetekben bizonyos cselekvéseket meg kell tennie, más esetekben pedig eltérően kell cselekednie.

A Java nyelvben ez egy feltételes utasítással történik , amely egy speciális kulcsszót használ, amely lehetővé teszi a különböző parancsblokkok végrehajtását a feltétel igazságértékétől függően.

A feltételes utasítás három részből áll: feltétel , 1. utasítás és 2. utasítás . Ha a feltétel igaz, akkor az 1. utasítás végrehajtásra kerül. Ellenkező esetben a 2. utasítás végrehajtásra kerül. Mindkét parancs soha nem kerül végrehajtásra. Íme az ilyen jellegű kijelentés általános megjelenése:

if (condition)
   statement 1;
else
   statement 2;
A if-elsefeltételes kijelentés

Teljesen érthető, ha sima angolul írják így:

If condition is true, then
   execute statement 1;
otherwise
   execute statement 2;
A if-elsenyilatkozat közérthető nyelven

Példák:

Kód Magyarázat
int age = 17;
if (age < 18)
   System.out.println("You are still a child");
else
   System.out.println("You are now an adult");
A képernyő kimenete a következő lesz:
You are still a child
int temperature = 5;
if (temperature < 0)
   System.out.println("It's freezing outside");
else
   System.out.println("It's warm");
A képernyő kimenete a következő lesz:
It's warm
int age = 18;
if (age == 18)
   System.out.println("You've been drafted for military service");
else
   System.out.println("Report for duty anyway");
A képernyő kimenete a következő lesz:
You've been drafted for military service


2. Állítások blokkja

Ha a feltétel teljesül (vagy nem), és azt szeretné, hogy a program több parancsot hajtson végre, egyesítheti őket egy blokkba .

A parancsok blokkba való egyesítéséhez kapcsos zárójelekbe kell "csomagolni" őket . Így néz ki általánosságban:

{
   statement 1;
   statement 2;
   statement 3;
}

Egy blokkban annyi állítás szerepelhet, amennyit csak akar. Vagy akár egyiket sem.

Példák az if-else utasításra egy utasításblokkkal kombinálva:

Kód Magyarázat
int age = 17;
if (age < 18)
{
   System.out.println("You are still a child");
   System.out.println("Don't talk back to adults");
}
else
{
   System.out.println("You are now an adult");
   System.out.println("And thus ends your youth");
}
A képernyő kimenete a következő lesz:
You are still a child
Don't talk back to adults
int temperature = 5;
if (temperature < 0)
{
   System.out.println("It's freezing outside");
   System.out.println("Put on a hat");
}
else
   System.out.println("It's warm");
A képernyő kimenete a következő lesz:
It's warm
int age = 21;
if (age == 18)
   System.out.println("You've been drafted for military service");
else
{
}
Az üres blokk végrehajtásra kerül.
A kód jól fog futni, de nem jelenik meg semmi .

if3. A nyilatkozat rövidített formája

Néha végre kell hajtania egy vagy utasításokat, ha a feltétel igaz, de semmit sem szabad tenni , ha hamis.

Például megadhatjuk ezt a parancsot: , de ne reagáljunk, ha a busz nincs itt. Java-ban ez a forgatókönyv lehetővé teszi egy rövidített forma használatát: blokk nélküli utasítást .If Bus No. 62 has arrived, then get aboardifelse

Más szóval, ha az utasítás(oka)t csak akkor kell végrehajtani, ha a feltétel igaz , és nincsenek végrehajtandó parancsok, ha a feltétel hamis, akkor ezt az ifutasítást kell használni, amely tömör és kihagyja a elseblokkot. Ez így néz ki:

if (condition)
   statement 1;
A iffeltételes kijelentés

Az alábbiakban három példa látható egyenértékű kódra:

Kód Magyarázat
int age = 18;
if (age == 18)
{
   System.out.println("You've been drafted for military service");
}
else
{
}
A képernyő kimenete a következő lesz:
You've been drafted for military service

A programnak van egy elseblokkja, de az üres (a kapcsos zárójelek között nincsenek utasítások). Egyszerűen eltávolíthatja. Semmi sem fog változni a programon.

Kód Magyarázat
int age = 18;
if (age == 18)
{
   System.out.println("You've been drafted for military service");
}
A képernyő kimenete a következő lesz:
You've been drafted for military service
int age = 18;
if (age == 18)
   System.out.println("You've been drafted for military service");
A képernyő kimenete a következő lesz:
You've been drafted for military service