Java'da bir while döngüsünden çıkmanın / sonlandırmanın en iyi yolu nedir?
Örneğin, kodum şu anda aşağıdaki gibidir:
while(true){
if(obj == null){
// I need to exit here
}
}
Yanıtlar:
Kodumda bulunan bir while...do
yapı bulmak while(true)
gözlerimi kandırırdı. while
Bunun yerine standart bir döngü kullanın:
while (obj != null){
...
}
Ve Yacoby onun sağlanan bağlantıyı bir göz atın cevap ve bunu da. Ciddi anlamda.
While () denetimi içinde, herhangi bir mantıksal denetimle aynı kuralları kullanarak birden çok koşul mantıksal testi yapabilirsiniz.
while ( obj != null ) {
// do stuff
}
olduğu gibi çalışır
while ( value > 5 && value < 10 ) {
// do stuff
}
geçerli. Koşullar döngü boyunca her yinelemede kontrol edilir. Biri eşleşmediği anda while () döngüsünden çıkılır. Ayrıca break de kullanabilirsiniz;
while ( value > 5 ) {
if ( value > 10 ) { break; }
...
}
Yukarıdaki cevaplarda zaten bahsedilen "ara" kelimesini kullanabilirsiniz. Bazı değerleri döndürmeniz gerekiyorsa. Aşağıdaki kod gibi "return" kullanabilirsiniz:
while(true){
if(some condition){
do something;
return;}
else{
do something;
return;}
}
bu durumda, bu while bir tür değerleri döndüren bir yöntem altındadır.
Oracle tarafından hazırlanan Java ™ Eğitimlerine bir göz atın .
Ama temelde, dacwe'nin dediği gibi , kullanın break
.
Yapabiliyorsanız, break kullanmaktan kaçınmak ve kontrolü while döngüsünün bir koşulu olarak koymak veya bir do while döngüsü gibi bir şey kullanmak genellikle daha açıktır. Yine de bu her zaman mümkün değildir.
while yazarsan (doğru) . bu, döngünün hiçbir durumda durmayacağı anlamına gelir, bu döngüyü durdurmak için while bloğu arasında break deyimini kullanmanız gerekir.
package com.java.demo;
/**
* @author Ankit Sood Apr 20, 2017
*/
public class Demo {
/**
* The main method.
*
* @param args
* the arguments
*/
public static void main(String[] args) {
/* Initialize while loop */
while (true) {
/*
* You have to declare some condition to stop while loop
* In which situation or condition you want to terminate while loop.
* conditions like: if(condition){break}, if(var==10){break} etc...
*/
/* break keyword is for stop while loop */
break;
}
}
}
Döngünün daha fazla koşulu işlemesine izin vermeyecek şekilde döngüyü kırmak için "kır" seçeneğini kullanabilirsiniz.
Bir while döngüsünden çıkmak için Break;
Bu, döngü içine yerleştirilen herhangi bir koşulu işlemeye izin vermez, döngünün dışına yerleştiremeyeceğiniz için bunun döngü içinde olduğundan emin olun.