public Iterator<T> iterator(){
return new MyIterator();
}
private class MyIterator implements Iterator<T>{
private Node<T> nextnode;
public MyIterator() {
nextnode = head;
}
public boolean hasNext() {
return (nextnode != null);
}
public T next() {
if(nextnode == null) {
throw new NoSuchElementException();
}
T val = nextnode.data;
nextnode = nextnode.next;
return val;
}
public void remove() {
}
}
기존 MySingleLinkedList 클래스에 이너클래스로
MyIterator를 만들어주었다.
Node객체를 멤버로 가지고
생성자에서 head값을 넣어주고
다음 노드가 있는지 확인하는 메서드와
다임 노드의 데이터를 반환하는 메서드를 구현하였다.
'알고리즘 with 자바 > 자료구조' 카테고리의 다른 글
연결리스트와 Iterator 2 (0) | 2021.07.20 |
---|---|
연결리스트와 Iterator 1 (0) | 2021.07.19 |
연결리스트의 개념과 기본연산 5 (0) | 2021.07.19 |
연결리스트의 개념과 기본연산 4 (0) | 2021.07.15 |
연결리스트의 개념과 기본연산 3 (0) | 2021.07.15 |