如果发生输入不匹配,我希望打印catch块中的内容。我已经编写了类Marathon的代码,它的对象就是在这里创建的。帮帮我
import java.util.InputMismatchException;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
Marathon m=new Marathon();
System.out.print("Enter name: ");
String name=sc.nextLine();
System.out.print("Enter age: ");
int age=sc.nextInt();
System.out.print("Enter Gender: ");
char gender=sc.next().charAt(0);
System.out.print("Enter Contact no: ");
long number=sc.nextLong();
try{
m.setName(name);
m.setAge(age);
m.setGender(gender);
m.setContactNo(number);
System.out.println("Registered Successfully");
}
catch(InputMismatchException e){
System.out.print("Invalid Input");
}
} 发布于 2020-04-25 03:07:08
您需要捕获将从try-catch块内的输入抛出的execptions
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
Marathon m=new Marathon();
System.out.print("Enter Contact no: ");
try{
System.out.print("Enter name: ");
m.setName(sc.nextLine());
System.out.print("Enter age: ");
m.setAge(sc.nextInt());
System.out.print("Enter Gender: ");
m.setGender(sc.next().charAt(0));
m.setContactNo(sc.nextLong());
System.out.println("Registered Successfully");
}
catch(InputMismatchException e){
System.out.print("Invalid Input");
}
}https://stackoverflow.com/questions/61415588
复制相似问题