본문 바로가기
Exception (예외)/Java

NoSuchElementException (예외)

by Hwanii_ 2023. 5. 20.
728x90

a) 232번째 코드라인에서 예외 발생

 

b) java.util.NoSuchElementException

 

c) java.util.NoSuchElementException 예외 ? 

: 더이상 Element가 없는데도 불러오려고 할 때 발생한다.

즉, Scanner가 읽어올 스트림이 없는데 읽으려고 해서 발생한 예외.

 

d) 해결방안

 

Stream을 닫아주는 sc.close();을 제거하면 해결 되는 모습을 볼 수 있다.

 

문제의 상황

1. 232번째 코드라인에서 예외가 발생했다고 하지만, (여기서는 일어날 에러가 마땅히 보이지도 않았다)

해당 코드를 실행시킬때 예외가 발생했다.

2. num : 상품의 고유 번호를 입력 받아 저장할 변수.

3. for문 : 0번째 부터 배열리스트 객체의 크기보다 작을때까지 (인덱스는 0부터 시작하니)

반복하면서, 

4. if문 : 만약 내가 입력한 고유번호가 배열리스트 객체의 i번째 값의 고유번호랑 같아 ?

그러면 그 객체(상품)의 재고를 변경할거야.

5. stock : 상품의 변경할 재고의 갯수를 입력 받아 저장할 변수.

6. 배열리스트 객체의 i번째 객체(상품)에서 changeStock이라는 메서드를 호출할거야.

7. 

main 에서 받아온 stock을 기존의 재고에 더하거나, 빼는 상황.

8. 기능을 수행하고, sc.close(); 를 해준 상황인데, 이것을 제거해주면 해결 된다.

 

마무리하며 

 

프로그램 진행 흐름 체크 하기

반응형

'Exception (예외) > Java' 카테고리의 다른 글

NullPointerException (예외)  (0) 2023.08.21
IndexOutOfBoundsException (예외)  (0) 2023.05.20
NullPointerException (예외)  (0) 2023.05.13
IndexOutOfBoundsException (예외)  (0) 2023.05.08