Bu örnekte bir uygulama console ekranından bir kullanıcıdan sürekli sayı girişi almaktadır. Kullanıcı sayı girdiği sürece yeni sayı istenecektir. Sayı dışında herhangi bir şey girildiğinde uygulama sonlanır.
import java.util.Scanner;
public class ScannerSystemInLoopTest {
public static void main(String[] args) {
boolean exit=false;
try (Scanner scanner = new Scanner(System.in)) {
// sayi disinda herhangi bir sey girilirse uygulamadan cikilir
while(!exit) {
String input = scanner.next();
try {
int number=Integer.parseInt(input);
System.out.println("number alindi : "+number);
} catch (NumberFormatException e) {
exit=true;
}
}
}
System.out.println("exit");
}
}
Scanner'a kurucusu ile System.in verilerek sürekli console girdisi okuması sağlanır. Kullanıcı giriş yaptığında scanner.next() ile girilen değer alınacaktır. Eğer değer Integer'e çevrilebilirse number alindi mesajı ekrana basılacaktır. Sayıya çevrilemediğinde sonsuz döngüden çıkılır ve uygulama sona erer.
Uygulama aşağıdaki gibi kullanılabilir:
10
number alindi : 10
34
number alindi : 34
56
number alindi : 56
E
exit
Önce 10 sayısını giriyoruz ve ekranda number alindi : 10 yazısını görüyoruz. Ardında 34 ve 56 sayısını girdiğimizde yine mesaj gözüküyor. E yazdığımız zaman döngüden çıkılıyor ve uygulama sona eriyor.