java - 从头部移除链表

标签 java data-structures linked-list

<分区>

在只有一个节点情况的链表中,我尝试使用 reoveFromHead() 将其删除;我在 toString() 方法中得到一个空指针。

public void removeFromHead(){
    if(head==null)
        return;

    else{
    head=head.next;
    }
}

public String toString() {
    String result = " ";
    ListNode a=head;

    while (a.next!=null){
        result +=" "+a.item;
        a=a.next;
    }
    result+=" "+a.item;
    return result;
}  

谁能指出错误在哪里?

最佳答案

如果 head=head.next; 给你 null (因为没有更多的项目)那么你不能调用 a.next 因为anull

public String toString() {
    String result = " ";
    ListNode a=head;
    if(a!=null){
        while (a.next!=null){
            result +=" "+a.item;
            a=a.next;
        }
    result+=" "+a.item;
    }
    return result;
} 

关于java - 从头部移除链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23672725/

相关文章:

java - resize() 方法被调用了多少次?

java - 删除数据结构 vector 中的重复项

data-structures - 链表和二叉搜索树的区别

c - 无法在Linux中使用C创建链表

java - 哪个占用更少的内存/处理能力? UUID 还是字符串?

java - 如何在 XML、REST 和数据库中命名相同的实体?

algorithm - 当你颠倒它们时它们仍然是有效数字的数字数量

C中使用链表将二进制转换为十进制

java - 由于 SOAP 信封/ header 混淆,Tomcat 中的任意 HTTP 501 未实现错误

java - csv文件中一列的最大长度是多少?