스캐너가 double을 요구하면서 InputMismatchException을 잡으려고하는데 입력 값이 "c"또는 "q"와 같으면 실행하고 싶습니다. catch 블록의 특정 코드 예외가 throw 된 후 사용자 입력 값을 가져 오는 방법이 있는지 궁금합니다. 예를 들어, 코드가 double을 요구하고 사용자가 "c"라는 글자를 입력하면, 나는 "c"가 입력되었다는 것을 알기를 원합니다.Java : 예외를 던진 사용자 입력 값 받기
double value = 0.0;
try{
System.out.print("\nEnter a number: ");
value = input.nextDouble();
}
catch(InputMismatchException notADouble){
if(notADouble.getValue().equalsIgnoreCase("c")){
//run the specific code for "c"
}
else if(notADouble.getValue().equalsIgnoreCase("q")){
//run the specific code for "q"
}
else{
System.out.print("\nInvalid Input");
}
}
감사를 사전에 입력 :
에 대해 : 여기에 "getValue()가"만들어 낸 메소드 이름 난 달성하기 위해 노력하고있어 설명하는 것입니다 내가 작성하는 노력하고있어 코드의
Double.parseDouble() 함수를 검사하면 Scanner.next() 또는 Scanner.nextLine(); – EyeOfTheHawks