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… else
Javi 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 true
ili false
.
- ako se stanje procijeni na
true
,if
izvršavaju se izrazi unutar tijela - ako se stanje procijeni na
false
,if
preskaču se iskazi unutar tijela
Kako ako izjava djeluje?
![](https://cdn.wiki-base.com/1185961/java_ifelse_statement_with_examples.png.webp)
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 if
bloka 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 if
bloku.
2. Izjava Java ako … ostalo (ako-tada-drugo)
Izraz if
izvrš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 else
blok. Izjave unutar tijela else
bloka 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 if
bloka) ako je uvjet true
i drugi zadatak (kodovi unutar else
bloka) ako je uvjet false
.
Kako funkcionira izjava if … else?
![](https://cdn.wiki-base.com/1185961/java_ifelse_statement_with_examples_2.png.webp)
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> 0
provjerava je li broj veći od 0.
Budući da je vrijednost broja 10, test izraz izračunava na true
. Stoga if
se 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 else
se 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 if
izjave izvršavaju od vrha prema dnu. Kada je test uvjet true
, if
izvršavaju se kodovi unutar tijela tog bloka. I, kontrola programa skače izvan ljestvice if … else … if .
Ako su svi izrazi za ispitivanje false
, else
izvršavaju se kodovi unutar tijela .
Kako ako … drugo … ako ljestve rade?
![](https://cdn.wiki-base.com/1185961/java_ifelse_statement_with_examples_3.png.webp)
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 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
U Javi je također moguće koristiti if… else
izraze unutar if… else
izraza. Zove se ugniježđeni if… else
izraz.
Evo programa za pronalaženje najvećeg od 3 broja pomoću ugniježđenog if… else
izraza.
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.