Извините, возможно, это новый ie вопрос. Но это задание от моего лектора, и срок должен быть завтра. Я пробовал много способов и отследил вывод, но это все равно привело к бесконечному l oop. Пожалуйста, помогите.
Заданный вопрос:
Удалите пропущенных студентов из studentList и переместите их в новый PassList LinkedList
Основное приложение:
StudentLinkedList failList = studentList; //assume studentList is already existed with some data
StudentLinkedList passList = new StudentLinkedList();
Student s = (Student)studentList.removeFirst(); //the return type was Object (it was user-defined LinkedList)
//so i use dynamic binding to change it to student
while(s != null) {
if(s.isPass()) { //return true if student passed
System.out.println("pass"); //i track my output with this
passList.addFirst(s);
} else {
System.out.println("fail"); //track output
failList.addFirst(s);
}
s = (Student)studentList.removeFirst();
}
Вывод был бесконечным l oop между отказом и проходом, который, как я полагаю, l oop был, потому что s никогда не был нулевым.
Вот удаление первого определения метода:
public Object removeFirst() {
if(head == null) { //check if the list was empty
return null;
} else {
current = head;
head = head.next;
if(head == null) {
tail = null;
}
return current.element;
}
}
Я учусь на втором курсе java. Ваша помощь будет оценена. Большое вам спасибо.