U ovom ćete uputstvu uz primjere naučiti o izrazima upravljanja protokom pomoću Jave ako i ako … else.
U računalnom programiranju koristimo naredbu if za kontrolu tijeka programa. Na primjer, ako je ispunjen određeni uvjet, pokrenite određeni blok koda. U suprotnom, pokrenite drugi kôd.
Na primjer, dodjeljivanje ocjena (A, B, C) na temelju postotka koji je student dobio.
- ako je postotak veći od 90 , dodijelite ocjenu A
- ako je postotak veći od 75 , dodijelite ocjenu B
- ako je postotak veći od 65 , dodijelite ocjenu C
U if… elseJavi postoje tri oblika iskaza.
- ako izjava
- if … else izjava
- if … else if … else izjava
- Ugnježđena izjava if … else
1. Izjava Java (ako-tada)
Sintaksa naredbe if-then :
 if (condition) ( // statements )
Ovdje je uvjet logički izraz. Vraća se trueili false.
- ako se stanje procijeni na true,ifizvršavaju se izrazi unutar tijela
- ako se stanje procijeni na false,ifpreskaču se iskazi unutar tijela
Kako ako izjava djeluje?
 Rad Java naredbe if
 Rad Java naredbe if
Primjer 1: Java if Statement
 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"); ) )
Izlaz
Broj je pozitivan. Izjava izvan bloka
U gornjem primjeru stvorili smo varijablu s imenom broj. Primijetite uvjet ispitivanja,
 number> 0
Ovdje uvjet provjerava je li broj veći od 0 . Budući da je broj veći od 0 , uvjet se procjenjuje true.
Ako promijenimo varijablu u negativan cijeli broj. Recimo -5 .
 int number = -5;
Sada, kada pokrenemo program, izlaz će biti:
 Statement outside if block
To je zato što je vrijednost broja manja od 0 . Dakle, stanje procjenjuje na false. I, tijelo ifbloka se preskače.
Napomena : Da biste saznali više o izražavanju uvjeta, posjetite Java relacijske operatore i Java logičke operatore.
Kao testni uvjet također možemo koristiti Java Strings.
Primjer 2: Java ako je sa nizom
 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"); ) ) )
Izlaz
Najbolji programski jezik
U gornjem primjeru uspoređujemo dvije žice u ifbloku.
2. Izjava Java ako … ostalo (ako-tada-drugo)
Izraz ifizvršava određeni odjeljak koda ako se probni izraz procjenjuje na true. Međutim, ako se evaluira testni izraz false, on ne čini ništa.
U ovom slučaju možemo koristiti neobavezni elseblok. Izjave unutar tijela elsebloka izvršavaju se ako se probni izraz procijeni na false. Ovo je u Javi poznato kao if- … else izjava.
Sintaksa naredbe if … else je:
 if (condition) ( // codes in if block ) else ( // codes in else block )
Ovdje će program izvršiti jedan zadatak (kodovi unutar ifbloka) ako je uvjet truei drugi zadatak (kodovi unutar elsebloka) ako je uvjet false.
Kako funkcionira izjava if … else?
 Rad Java naredbi if-else
 Rad Java naredbi if-else
Primjer 3: Java if … else Izjava
 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"); ) )
Izlaz
Broj je pozitivan. Izjava izvan ako … inače blokira
U gornjem primjeru imamo varijablu s imenom number. Ovdje test test number> 0provjerava je li broj veći od 0.
Budući da je vrijednost broja 10, test izraz izračunava na true. Stoga ifse izvršava kôd unutar tijela .
Sada promijenite vrijednost broja u negativan cijeli broj. Recimo -5.
 int number = -5;
Ako program pokrenemo s novom vrijednošću broja, izlaz će biti:
Broj nije pozitivan. Izjava izvan ako … inače blokira
Ovdje je vrijednost broja -5. Dakle, test izraz procjenjuje na false. Stoga elsese izvršava kôd unutar tijela .
3. Java ako … inače … ako Izjava
U Javi imamo ljestvicu if … else … if koja se može koristiti za izvršavanje jednog bloka koda među više drugih blokova.
 if (condition1) ( // codes ) else if(condition2) ( // codes ) else if (condition3) ( // codes )… else ( // codes )
Ovdje se ifizjave izvršavaju od vrha prema dnu. Kada je test uvjet true, ifizvršavaju se kodovi unutar tijela tog bloka. I, kontrola programa skače izvan ljestvice if … else … if .
Ako su svi izrazi za ispitivanje false, elseizvršavaju se kodovi unutar tijela .
Kako ako … drugo … ako ljestve rade?
 Rad na if … else … if ljestve
 Rad na if … else … if ljestve
Primjer 4: Java ako … inače … ako Izjava
 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."); ) ) )
Izlaz
Broj je 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 0
- number < 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
U Javi je također moguće koristiti if… elseizraze unutar if… elseizraza. Zove se ugniježđeni if… elseizraz.
Evo programa za pronalaženje najvećeg od 3 broja pomoću ugniježđenog if… elseizraza.
Primjer 5: Ugnježđena izjava if … else
 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); ) )
Izlaz :
Najveći broj: 4.5
U gornjim programima sami smo dodijelili vrijednost varijabla kako bismo to olakšali.
Međutim, u stvarnim aplikacijama ove vrijednosti mogu potjecati od korisničkih ulaznih podataka, datoteka dnevnika, predaje obrazaca itd.








