gpt4 book ai didi

java - 如何打印出 LinkedList 中的数据

转载 作者:搜寻专家 更新时间:2023-10-31 19:33:05 25 4
gpt4 key购买 nike

我已经成功地从头开始创建了一个 LinkedList。到目前为止它只能添加数据。没有删除或类似的东西。

我可以添加字符串、整数等,但打印我添加的数据时遇到问题。我怎么做?我想我必须先循环遍历它,但是如何呢?”

这是我的节点类:

public class Node {
T data;
Node<T> nextNode;

public Node(T data) {
this.data = data;
}

public String toString () {
return data +"";
}
}

这是 LinkedList 类:

public class LinkedList <T> {

Node<T> head;
Node<T> tail;

public void add (T data) {
// where to add statements. if its empty or not
Node<T> node = new Node<T> (data);

if (tail == null) { // empty list
// nothng in the node = tail = node;
head = node;
tail = node;
}
else { // non empty list, add the new boogie train to the tail
tail.nextNode = node; // new node pointing to tail
tail = node; // update
}
}

这是主要的。我从 Linkedlist 创建一个对象并使用通用的 add 方法添加我的数据。但是我如何在屏幕上打印出来呢?提前致谢。

public static void main(String[] args) {
LinkedList<Object> list = new LinkedList<Object> ();
list.add(15); // boogie1 = head
list.add(16);
list.add(10); // boogie end = tail

最佳答案

在 LinkedList 类中添加 toString 方法

public String toString() {
Node<T> curr = head;
StringBuilder sb = new StringBuilder();
sb.append("LinkedList [");
while (curr != null) {
sb.append(curr.data);
if (curr.nextNode != null) {
sb.append(", ");
}
curr = curr.nextNode;
}
sb.append("]");
return sb.toString();
}

然后在你的主方法中调用它:

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

关于java - 如何打印出 LinkedList 中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26296320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com