>Java >java지도 시간 >Scanner.nextInt()를 사용할 때 'java.util.NoSuchElementException'을 방지하는 방법은 무엇입니까?

Scanner.nextInt()를 사용할 때 'java.util.NoSuchElementException'을 방지하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-10 22:12:02227검색

How to Prevent

Scanner의 nextInt()에 대한 오류 처리

Scanner.nextInt()를 사용하여 정수를 검색하려고 할 때 사용자에게 가끔 오류가 발생합니다. :

java.util.NoSuchElementException
    at java.util.Scanner.throwFor(Scanner.java:907)
    at java.util.Scanner.next(Scanner.java:1530)
    at java.util.Scanner.nextInt(Scanner.java:2160)
    at java.util.Scanner.nextInt(Scanner.java:2119)

이 오류는 입력 스트림에 읽을 nextInt()에 대한 정수가 없을 때 발생합니다. 이를 해결하는 한 가지 방법은 hasNexInt()를 사용하는 것입니다. 이 함수는 읽기를 시도하기 전에 정수가 있는지 확인합니다.

Scanner s = new Scanner(System.in);
int choice = 0;

if(s.hasNextInt()) 
{
   choice = s.nextInt();
}

s.close();

이 수정을 통해 읽을 수 있는 정수가 있는 경우에만 nextInt()가 호출되어 오류를 방지할 수 있습니다. 또한 시스템 리소스 해제가 완료되면 스캐너를 닫는 것이 좋습니다.

위 내용은 Scanner.nextInt()를 사용할 때 'java.util.NoSuchElementException'을 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.