hj_d   9년 전

소스 이렇게 짰는데.

n 을 입력 받아 6의 배수면 Y 를 출력 하고

6의 배수가 아니면 N 을 출력 하게 만들었는데,

멈추때 -1 을 입력 받으면 멈추게 했구요.

그런데 계속 런타임 에러가 뜨는데 이유를 모르겠습니다.

pichulia   9년 전

while(true) 대신에

while(sc.hasNext()) 를 시도해보세요

hj_d   9년 전

감사합니다ㅎㅎ

hj_d   9년 전

고쳐서 성공 하였는데 무슨 차이 인지 알려 주실수 있나요?ㅜㅜ

amugeona   9년 전

hasNext는 다음에 받을 값이 있는지 검사하는 메소드입니다.

nextInt는 값을 받을 때까지 멈춰있는 메소드입니다.

다음에 받아올 값이 없는 경우 nextInt에서 -1이 들어오는 것이 맞나요?

확인해볼 부분같은데 ㅎㅎ...

시간초과가 아닌 런타임에러가 걸린건 조금 의아하긴 합니다만, hasNext를 쓰는게 더 자연스러운 방법인건 이해하셨을거라 넘어갑니다.

댓글을 작성하려면 로그인해야 합니다.