If ja else -lauseet

"Vie matot ulos! Tamppaa ne! Jos olet tehnyt ennen klo 18 olen tyytyväinen, muuten mökötän".

if (ehto)
	toiminta1;
else
	toiminta2;
Esimerkki 1.
int x=5
int y=4

if (x > y)
	System.out.println("x oli isompi");

else System.out.println("y oli isompi");
Edellisessä esimerkissä on jotain vikaa. Mitä? Esimerkki 2.
int asukkaita = 400; 
if (100 <= asukkaita && asukkaita <= 500) /* asukkaita on 100-500 
*/ else /* asukkaita < 100 tai asukkaita > 500 

Joskus on tarvetta hienompaan jaotteluun ja silloin kannattaa käyttää else if lausetta

Esimerkki 3.
int x=5, y=4;

if (x > y) 				// jos tämä toteutuu, suoritetaan vain ensimmäinen tulostuslause
	System.out.println("x oli y:tä isompi"); 

else if (x < y) 		// jos tämä toteutuu suoritetaan vain allaoleva 
	tulostuslause 		// System.out.println("y oli x:ää isompi"); 

else 					// suoritetaan jos edellisiä ei suoritettu 
	System.out.println("x ja y olivat yhtäsuuret"); 

Millä tavalla esimerkin 4 suoritus poikkeaa esimerkin kolme suorituksesta? Esimerkki 4.
int x=5, y=4;
if (x > y) 			// jos tämä toteutuu, suoritetaan vain ensimmäinen tulostuslause
 	System.out.println("x oli y:tä isompi"); 
	
if (x < y) 				// tämä voidaan suorittaa myös vaikka ensimmäinen suoritettiin
	System.out.println("y oli x:ää isompi"); 
	
else // suoritetaan jos edellisiä ei suoritettu 
	System.out.println("x ja y olivat yhtäsuuret");