java.util.NoSuchElementException을 던지지 않는 Iterator.next()의 구현을 보고합니다.
그러한 구현은 java.util.Iterator의 컨트랙트를 위반하며 반복자가 표준이 아닌 방식으로 사용되는 경우 탐지하기 어려운 버그를 초래할 수 있습니다.
예:
class Numbers implements Iterator<Integer> {
@Override
public Integer next() { // 경고
if (hasNext()) {
return generateNext();
} else {
return null; // 대신 NoSuchElementException을 던져야 합니다
}
}
...
}