【发布时间】:2013-01-30 06:01:41
【问题描述】:
我的 java 程序中有一些嵌套的 while 循环有一个大问题。根据我调试的代码,我检查了第二个 while 循环语句一次,然后永远退出循环。我不知道为什么会这样,所以我会在这里发布代码:
while (current != null) {
if(id == current.getMovie().getId()) {
movieExists = true;
movie = current;
while (checkCurrent == movie) {
showingPointer = checkCurrent.getMovie().getLinkHead();
while (showingPointer != null) {
if (cal.compareTo(showingPointer.getShowing().getShowingCalendar()) == 0) {
return false;
}
showingPointer = showingPointer.getNext();
}
checkCurrent = checkCurrent.getNext();
}
}
current = current.getNext();
}
【问题讨论】:
-
为了更好的答案,请告诉我们checkCurrent和movie的定义。我认为问题出在 checkCurrent == 电影
-
checkCurrent 和movie 都是存储电影对象的链表中的节点。我做了techExchange所说的但无济于事。它仍然奇怪地跳过了 while 循环。直接从 while (checkCurrent == movie) { line 到 checkCurrent = checkCurrent.getNext();行。
标签: java loops while-loop nested-loops