ListIterator에 대한 Javadoc 은 다음과 같이 말합니다.
A
ListIterator
에는 현재 요소가 없습니다. 커서 위치는 항상 호출에 의해 반환되는previous()
요소와 호출에 의해 반환되는 요소 사이에 있습니다next()
.
Java가 ListIterator
현재 요소가 아닌 요소 사이를 가리 키도록 구현 된 이유는 무엇 입니까? 반복적으로 호출 할 때이 클라이언트 코드가 덜 쉽게 읽을 것 같다 getNext()
, getPrevious()
내가 선택을위한 좋은 이유가 있어야합니다 가정, 그래서.
사이드 참고로, 난 그냥 쓴 작은 도서관이라고 peekable-ArrayList를 확장 ArrayList
, Iterator
그리고 ListIterator
그건 제공 peekAtNext()
및 peekAtPrevious()
방법은 다음과 같이 구현 :
@Override public synchronized T peekAtNext() {
T t = next();
previous();
return t;
}