프로그램 견고성을 높이기 위해 사용자는 입력을 유효한 정수 값으로 제한하고 숫자가 아닌 항목을 처리하는 데 어려움을 겪습니다. 널리 사용되는 라이브러리인 Scanner는 이러한 장애물에 대한 솔루션을 제공합니다.
Scanner는 다가오는 입력이 있는지 확인하는 hasNextInt() 메서드를 제공합니다. 정수로 해석될 수 있습니다. 이 메서드는 정적으로 유지되므로 입력을 넘어서 진행되지 않습니다.
hasNextInt()를 통합하면 우아한 솔루션이 가능합니다.
Scanner sc = new Scanner(System.in); System.out.print("Enter number 1: "); while (!sc.hasNextInt()) sc.next(); // Skips non-numeric input int num1 = sc.nextInt(); int num2; System.out.print("Enter number 2: "); do { while (!sc.hasNextInt()) sc.next(); // Skips non-numeric input num2 = sc.nextInt(); } while (num2 < num1); // Enforces num2 being greater than num1
hasNextXXX 메소드는 정적으로 유지되므로 next()를 호출하여 유효하지 않은 입력에서 "쓰레기"를 삭제해야 합니다.
위 내용은 Java 스캐너로 잘못된 정수 입력을 어떻게 강력하게 처리할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!