입력이 bigDecimal이 아닌 경우 예외를 throw하고 다시 스캔하려면 어떻게해야합니까?

StudentL

bigDecimal을 스캔하고 싶지만 스캔 된 입력이 bigdecimal이 아닌 경우 사용자 지정 예외를 throw하고 다시 스캔해야합니까?

아래 코드를 시도하고 있지만 결론에 도달 할 수 없습니다.

암호:

import java.util.*; 
import java.io.*;

class WrongInputException extends Exception{  
 WrongInputException(String s){  
  super(s);  
 }  
}  

public class Main
{
    public static void main(String[] args)  throws WrongInputException
    {
        try 
        {
            int number;
            Scanner sc = new Scanner(System.in);
             while (!sc.hasNextBigDecimal()) 
             {
                 throw new WrongInputException("Wrong data type of input....."); 
             }
             number = sc.nextInt();
            System.out.println(number);
        } catch(NumberFormatException e) {
           System.out.println(e.getMessage());
        } 
    }
}
AirlineDog

문제는 던지는 예외를 처리하지 않는다는 것입니다.

sc.next();끝없는 루프를 피하기 위해 try catch 블록을 추가하여 thw 내부에서 처리해야 합니다.

 while (!sc.hasNextBigDecimal())
         {
            try {
             throw new WrongInputException("Wrong data type of input.....");

            }catch (WrongInputException e) {
                e.printStackTrace();
            }finally {
                sc.next();
            }
        }

throw 할 예외가 있으므로 try catch에는 아무런 의미가 없습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

하나 이상의 입력이 원본이 아닌 경우 CSS를 링크에 적용하고 모든 입력이 원본이면 변경을 취소하려면 어떻게해야합니까?

분류에서Dev

실행 중이 아닌 경우에도 Java 스윙 애플리케이션에서 알림을 푸시하려면 어떻게해야합니까?

분류에서Dev

label.text가 비어있는 경우이 텍스트를 표시하려면 어떻게해야합니까?

분류에서Dev

행이 아닌 열의 테이블에 데이터를 표시하려면 어떻게해야합니까?

분류에서Dev

다른 테이블의 값을 알고 있지만 ID가 아닌 경우 테이블에서 행을 선택하려면 어떻게해야합니까?

분류에서Dev

상단이 아닌 중앙에서 페이지를 준비 / 시작하려면 어떻게해야합니까?

분류에서Dev

입력이없는 경우 각 인 텐트에 대해 사용자 지정 다시 프롬프트를 제공하려면 어떻게해야합니까?

분류에서Dev

옵션이 아닌 'children'으로 React.FC를 입력하려면 어떻게해야합니까?

분류에서Dev

'diff -X'가 파일 이름이 아닌 특정 경로를 무시하도록하려면 어떻게해야합니까?

분류에서Dev

배경 이미지가 크롬에서 cssImageValue가 아닌 이유는 무엇입니까? 캔버스를 배경 이미지로 처리하지만 새 이미지를 만들지 않으려면 어떻게해야합니까?

분류에서Dev

응답이 Alamofire 요청의 200인지 아닌 경우 seque보기를 변경하려면 어떻게해야합니까?

분류에서Dev

모든 업데이트 반복이 아닌 true 인 경우 이벤트를 한 번만 실행하려면 어떻게해야합니까?

분류에서Dev

타이머 간격이 -1000 인 경우 예외를 어떻게 처리하고 수정해야합니까?

분류에서Dev

, 다른 던져 예외를 키가 존재하고 값이 null가 아닌 경우, 맵에 넣어

분류에서Dev

Ubuntu 14.04에서 시스템 드라이브가 아닌 드라이브에 소프트웨어 RAID를 생성하려면 어떻게해야합니까?

분류에서Dev

CSS 미디어 쿼리, 높이가 500px보다 큰 경우 div 아래에 그림자를 추가하려면 어떻게해야합니까?

분류에서Dev

댓글이 표시되는 경우 숫자를 제한하려면 어떻게해야합니까?

분류에서Dev

ID가 null 인 경우 404 오류 페이지를 표시하려면 어떻게해야합니까?

분류에서Dev

String 목록이 아닌 목록이나 Movie를 반환하도록 메서드를 다시 작성하려면 어떻게해야합니까?

분류에서Dev

다른 셀이 특정 값인 경우에만 셀 수를 계산하려면 어떻게해야합니까?

분류에서Dev

부트 스트랩을 사용하고있는 경우 3 개의 이미지를 연속으로 표시하려면 어떻게해야합니까?

분류에서Dev

정적 값이 작동하지만 mySQL의 동적이 아닌 경우 Javascript로 Chart.js에 JSON 데이터를 표시하려면 어떻게해야합니까?

분류에서Dev

HTML이 아닌 이메일을 굵게 표시하려면 어떻게해야합니까?

분류에서Dev

마우스 오버시 슬라이더를 일시 중지하려면 어떻게해야합니까?

분류에서Dev

입력이 원하는 것이 아닌 경우 재시도 팝업을 어떻게 만들 수 있습니까?

분류에서Dev

전체 요소와 패딩이 아닌 마우스를 올려 놓을 때 요소 내의 텍스트를 강조 표시하려면 어떻게해야합니까? CSS / HTML

분류에서Dev

쉘을 시작할 때 프로그램이 실행 중인지 확인하고 아직 실행 중이 아닌 경우 해당 프로그램을 시작하려면 어떻게해야합니까?

분류에서Dev

입력하는 경우에도 EditText 항목의 힌트를 표시하려면 어떻게해야합니까?

분류에서Dev

Leaflet지도에 마우스를 올려 놓을 때 다각형의 하이라이트 색상을 변경하려면 어떻게해야합니까?

Related 관련 기사

  1. 1

    하나 이상의 입력이 원본이 아닌 경우 CSS를 링크에 적용하고 모든 입력이 원본이면 변경을 취소하려면 어떻게해야합니까?

  2. 2

    실행 중이 아닌 경우에도 Java 스윙 애플리케이션에서 알림을 푸시하려면 어떻게해야합니까?

  3. 3

    label.text가 비어있는 경우이 텍스트를 표시하려면 어떻게해야합니까?

  4. 4

    행이 아닌 열의 테이블에 데이터를 표시하려면 어떻게해야합니까?

  5. 5

    다른 테이블의 값을 알고 있지만 ID가 아닌 경우 테이블에서 행을 선택하려면 어떻게해야합니까?

  6. 6

    상단이 아닌 중앙에서 페이지를 준비 / 시작하려면 어떻게해야합니까?

  7. 7

    입력이없는 경우 각 인 텐트에 대해 사용자 지정 다시 프롬프트를 제공하려면 어떻게해야합니까?

  8. 8

    옵션이 아닌 'children'으로 React.FC를 입력하려면 어떻게해야합니까?

  9. 9

    'diff -X'가 파일 이름이 아닌 특정 경로를 무시하도록하려면 어떻게해야합니까?

  10. 10

    배경 이미지가 크롬에서 cssImageValue가 아닌 이유는 무엇입니까? 캔버스를 배경 이미지로 처리하지만 새 이미지를 만들지 않으려면 어떻게해야합니까?

  11. 11

    응답이 Alamofire 요청의 200인지 아닌 경우 seque보기를 변경하려면 어떻게해야합니까?

  12. 12

    모든 업데이트 반복이 아닌 true 인 경우 이벤트를 한 번만 실행하려면 어떻게해야합니까?

  13. 13

    타이머 간격이 -1000 인 경우 예외를 어떻게 처리하고 수정해야합니까?

  14. 14

    , 다른 던져 예외를 키가 존재하고 값이 null가 아닌 경우, 맵에 넣어

  15. 15

    Ubuntu 14.04에서 시스템 드라이브가 아닌 드라이브에 소프트웨어 RAID를 생성하려면 어떻게해야합니까?

  16. 16

    CSS 미디어 쿼리, 높이가 500px보다 큰 경우 div 아래에 그림자를 추가하려면 어떻게해야합니까?

  17. 17

    댓글이 표시되는 경우 숫자를 제한하려면 어떻게해야합니까?

  18. 18

    ID가 null 인 경우 404 오류 페이지를 표시하려면 어떻게해야합니까?

  19. 19

    String 목록이 아닌 목록이나 Movie를 반환하도록 메서드를 다시 작성하려면 어떻게해야합니까?

  20. 20

    다른 셀이 특정 값인 경우에만 셀 수를 계산하려면 어떻게해야합니까?

  21. 21

    부트 스트랩을 사용하고있는 경우 3 개의 이미지를 연속으로 표시하려면 어떻게해야합니까?

  22. 22

    정적 값이 작동하지만 mySQL의 동적이 아닌 경우 Javascript로 Chart.js에 JSON 데이터를 표시하려면 어떻게해야합니까?

  23. 23

    HTML이 아닌 이메일을 굵게 표시하려면 어떻게해야합니까?

  24. 24

    마우스 오버시 슬라이더를 일시 중지하려면 어떻게해야합니까?

  25. 25

    입력이 원하는 것이 아닌 경우 재시도 팝업을 어떻게 만들 수 있습니까?

  26. 26

    전체 요소와 패딩이 아닌 마우스를 올려 놓을 때 요소 내의 텍스트를 강조 표시하려면 어떻게해야합니까? CSS / HTML

  27. 27

    쉘을 시작할 때 프로그램이 실행 중인지 확인하고 아직 실행 중이 아닌 경우 해당 프로그램을 시작하려면 어떻게해야합니까?

  28. 28

    입력하는 경우에도 EditText 항목의 힌트를 표시하려면 어떻게해야합니까?

  29. 29

    Leaflet지도에 마우스를 올려 놓을 때 다각형의 하이라이트 색상을 변경하려면 어떻게해야합니까?

뜨겁다태그

보관