当输入不同于数字时如何设置按摩以不提供错误“线程中的异常”主“java.util.InputMismatchException”?
我必须使用if / else语句或什么?请帮助我在我可怜的java :)
public static void main(String[] args) {
System.out.println("Oceń konika od 1 do 6");
Scanner PodajCyfre = new Scanner( System.in ); //nadanie zmiennej input PodajCyfre
int WygladKonika = PodajCyfre.nextInt(); // przypisanie PodajCyfre do wartości
switch (WygladKonika) {
case 1 :
System.out.println("Ten konik jest brzydki i mi sie kompletnie nie podoba");
break;
case 2:
System.out.println("Nie jest za ładny ten konik, ale widziałam brzydsze");
break;
case 3:
System.out.println("Taki średni jest ten konik");
break;
case 4:
System.out.println("Ładny konik");
break;
case 5:
System.out.println("Śliczny konik bardzo mi sie podoba");
break;
case 6:
System.out.println("To jest najpiekniejszy konik jakiego widziałam. Uwielbiam go !!");
break;
default:
System.out.println("To nie jest cyfra od 1 do 6");
}
}
}
在转换为Int扫描器输入之前检查。所以代码将在while循环中输入。
public static void main(String[] args) {
Scanner PodajCyfre = new Scanner(System.in); //nadanie zmiennej input PodajCyfre
System.out.println("Oceń konika od 1 do 6");
while (!PodajCyfre.hasNextInt()) {
System.out.println("Please write a number ! Oceń konika od 1 do 6");
PodajCyfre.next();
}
int WygladKonika = PodajCyfre.nextInt(); // przypisanie PodajCyfre do wartości
switch (WygladKonika) {
case 1:
System.out.println("Ten konik jest brzydki i mi sie kompletnie nie podoba");
break;
case 2:
System.out.println("Nie jest za ładny ten konik, ale widziałam brzydsze");
break;
case 3:
System.out.println("Taki średni jest ten konik");
break;
case 4:
System.out.println("Ładny konik");
break;
case 5:
System.out.println("Śliczny konik bardzo mi sie podoba");
break;
case 6:
System.out.println("To jest najpiekniejszy konik jakiego widziałam. Uwielbiam go !!");
break;
default:
System.out.println("To nie jest cyfra od 1 do 6");
}
}
按如下方式读取int
int WygladKonika;
try {
WygladKonika = PodajCyfre.nextInt();
} catch (InputMismatchException e) {
System.out.println("Input can't be converted to an integer");
// exit, read another value, etc
}
使用try-catch
块来捕获java.util.InputMismatchException
并在发生此异常时显示消息。
try {
Scanner PodajCyfre = new Scanner(System.in); //nadanie zmiennej input PodajCyfre
int WygladKonika = PodajCyfre.nextInt(); // przypisanie PodajCyfre do wartości
switch (WygladKonika) {
//
}
} catch (InputMismatchException e) {
// Exception caught, show message
System.out.println("Invalid input");
}