打印单链接列表中的节点

人气:192 发布:2023-01-03 标签: java singly-linked-list

问题描述

我创建了一个节点类,它是一个链表类。有什么方法可以打印出这个列表中的元素吗?我创建了print()方法,但它只返回第一个元素,即21。如何循环访问该列表?

public class ListNode {
    private int item;
    private ListNode next;

    public ListNode(int item, ListNode next){
        this.item = item;
        this.next = next;
    }

    public ListNode(int item){
        this(item, null);
    }

    public int print(){
        return item;
    }

    public static void main(String[] args) {            
        ListNode list = new ListNode(21, new ListNode(5, new ListNode(19, null)));
        System.out.println(list.print());
    }

}

推荐答案

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

然后您可以简单地执行

System.out.println(list.toString());

(我将您的函数从print重命名为toString,以便更准确地描述它的作用)

22