그래서 두 개의 데이터 유형 (링크 된 목록 및 Arraylist)이 포함 된 프로그램을 만들고 있습니다.Java : 반복자
는 링크 된 목록 반복자는 다음과 같습니다
private class NodeIterator implements Iterator<StudentIF> {
private Node curr;
public NodeIterator(Node head) {
curr = head;
}
public void remove() { }
public boolean hasNext() {
if (curr == null)
return false;
return true;
}
public StudentIF next() {
Node temp = curr;
curr = curr.getNext();
return temp.getData();
}
} // end class NodeIterator
내가 ArrayList의 반복자 방법/클래스를 호출합니다. 여기
MyArrayListName.iterator();
이 반복자 호출의 작업 수행하는 방법이다 : 나는 자신의 ID (인스턴스 변수)에 의해 내 개체를 가져 내 방법을 호출 할 때
public StudentIF getStudent(int id) {
Iterator<StudentIF> xy = iterator();
while (xy.hasNext()) {
if (id == xy.next().getId()) {
return xy.next();
}
}
// Student doesn't exist
return null;
}
내 문제를 항상 잡는다 NEXT 개체가 아니라 원하는 개체. 연결된 목록과 배열 목록을 모두 사용하여 현재 개체를 얻으려면 어떻게해야합니까?
도와주세요!
브라이언 감사합니다. 나는 진찰 때문에 당신의 대답을 받아 들였습니다. 좋은 발사! :-) 나는이 버그를 가지고있다. 당신의 도움을 주셔서 감사합니다! –