如何删除列表中的所有节点

public void deleteAll() {

    if(head==null) {

        System.out.println("list already empty");

    }

    else {

        Node temp=head; Node del;

        while(temp.next!=null) {

            del=temp.next;

            temp=null;

            temp=del;

        }

        System.out.println("all nodes deleted");

    }

}

这是在不带参数的情况下删除链表中所有节点的方法。


慕尼黑8549860
浏览 110回答 1
1回答

开心每一天1111

public void deleteAll() {    head = null;}你忘了设置head为空。并且由于垃圾收集,列表中的所有节点都不再可引用,将被垃圾收集。将变量设置为 null 将没有实际效果。将字段设置为 null,将使对象(值)可能无法访问并且可用于垃圾收集。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java