我在包含5個節點的鏈接列表上使用int數據調用此方法< 4,3,2,1>
我想刪除奇數整數並返回< 4 ,2>
我跑的主要方法mylist.removeOdds 這似乎是正常工作,但從來沒有刪除(分配一個節點到當前下)
輸出
此輸出保持下去,直到我終止
同時輸入條件循環
current elem耳鼻喉科前3個元素4
如果條件滿足
當前元素前3個元素4
如果條件滿足
當前元素前3個元素4
如果條件滿足從Java中的鏈接列表中刪除奇數int節點
Public void removeOdds() {
Node current = head;
Node previous=null;
while ((current.getNext()) != null) {
if (head == null) {
System.out.println("The list is empty");
} else {
while (current != null && (current.getElement()) % 2 != 1) {
previous = current;
current = current.getNext();
System.out.println("while condition loop entered");
System.out.println("current element " + current.getElement()+" previous element "+ previous.getElement());
}
if ((current.getElement()) % 2 == 1) {
System.out.println("if condition met ");
previous.setNext(current.getNext());
System.out.println("current element " + current.getElement()+" previous element "+ previous.getElement());
}
}
}
#codeMan是正確的。在if條件滿足後,你並沒有前進。因此它會一直循環直到你終止。 – 2015-03-02 05:52:16
#codeMan是的,有我的時刻。 – user3072188 2015-03-02 06:09:52