Koşullu Deyİmler   
Koşullu deyimler hangi deyim ya da deyimlerin verilen koşul anlatımına göre yürütüleceğine karar verilmesini sağlar. Java programlama dilinde üç çeşit döngü deyimi vardır: eğer (if), eğer-ya da (if-else), ve anahtar (switch).
If deyimi bir deyimi ya da deyim öbeğini yürütme yada yürütmeme kararını vermek için kullanılır. Eğer koşul doğru ise deyim yürütülür, yoksa yürütme onu takip eden bir sonraki deyimle devam eder. If deyiminin biçimi aşağıdaki gibidir:
...
if(koşul) deyim;
// veya
if(koşul){
  deyim 1;
  ...
  deyim n;
}
...


						
Koşul anlatımı bir bool değer döndürmelidir. Do-while deyimi de benzer yürütme yapar.
Bir if-else deyimi hangi deyimi ya da deyim öbeğini yürütme kararını vermek için kullanılır. Eğer koşul doğru ise birinci deyim ya da deyim öbeği yürütülür, yoksa ikinci deyim ya da deyim öbeği yürütülür. If-else deyiminin biçimi aşağıdaki gibidir:

if(kosul) deyim1; else deyim2;
// veya
if(kosul){
  deyim 1_1;
  ...
  deyim 1_n;
} else {
  deyim 2_1;
  ...
  deyim 2_m;
}
					
Else bölümü başka if deyimleri de içerebilir:
 if (kosul 1){
  deyim 1_1;
  ...
  deyim 1_n;
} else if (kosul 2){
  deyim 2_1;
  ...
  deyim 2_m;
} else if (kosul 3) {
  deyim 3_1;
  ...
  deyim 3_k;
} else {
  deyim 4_1;
  ...
  deyim 4_t;
}
Bir switch deyimi verilen tamsayı veya karakter değerine göre (bir değişkenden veya anlatımdan gelen) yürütülecek bir deyimi ya da deyimleri seçmede kullanılır. switch deyiminin biçimi aşağıdaki gibidir:
switch (anlatim){
case <deger1>: 
  deyim 1;
  break;
case <deger2>:
  deyim 2;
  break;
...
case <deger n>:
  deyim n;
  break;
default:
  deyim n+1;
}
						
						
Burada anlatım bir tamsayı veya karakter değeri üretir ve yürütülecek deyim onun değerine göre belirlenir. Örneğin, eğer onun değeri <değer 2> ye eşitse case <değer 2> bölümü break deyimine kadar yürütülür. break) deyimim switch öbeğinin sona ermesine sebep olur ve yürütme switch öbeğini takip eden deyimle devam eder. Eğer hiçbir case <değer i> satırı eşleşmezse varsayılan (default) bölümü yürütülür (istenmezse varsayılan bölümü atlanabilir).
Birçok case bölümünü şu şekilde birleştirmek mümkün:
switch (anlatim){
case <deger1>: 
case <deger2>:
case <deger3>:
  deyim 1;
  break;
case <deger4>:
case <deger5>
  deyim 2;
  break;
...
case <deger n>:
  deyim n;
  break;
default:
  deyim n+1;
}
					
					
Bu durumda, eğer anlatim, <deger1>, <deger2> veya <deger3> den birine eşitse deyim 1 yürütülür.