簡體   English   中英

在LinkedList中搜索元素時的NPE

[英]NPE when searching element in the LinkedList

我正在搜索LinkedList中的一個元素,當該元素確實在列表中時,輸出是正確的。 但是,測試相反的情況,當搜索Null或不在列表中的元素時,將發生NPE。 請幫忙,謝謝!

public boolean find(E e){
    Node current=head;
    while(current.item !=null){
        if(e.equals(current.item)){
            System.out.println("True");
            return true;
        }
        current=current.next;
    }
    System.out.println("False");
    return false;
}

while語句應為while(current !=null)

可能是您需要在while循環中更改條件:

public boolean find(E e){
    Node current=head;
    while(current != null){
        if( (current.item != null) && (e.equals(current.item)){
            System.out.println("True");
            return true;
        }
        current=current.next;
    }
    System.out.println("False");
    return false;
}

還要檢查節點中的item是否不為null

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM