【问题标题】:How to insert strings into a linked list in java如何在java中将字符串插入到链表中
【发布时间】:2021-12-31 07:29:09
【问题描述】:

我正在编写一个程序来将 String 类型的数据添加到循环双向链表中并在 java 中查看它们。 我想知道如何将字符串添加到链表以及如何获取输出。

我尝试的方式报错:“构造函数 Node() 未定义” 如何解决这个问题。

这是我试过的代码:

class Node {
    int data;
    Node nextNode;
    Node prevNode;
}

class CircularDoublyLL {
    Node head = null;
    Node tail = null;

    public void insertLast(String songName) {
        Node newNode = new Node();
        newNode.data = songName;

        if (head == null) {
            head = tail = newNode;
            head.nextNode = head;
            head.prevNode = head;
        } else {
            tail.nextNode = newNode;
            newNode.prevNode = tail;
            newNode.nextNode = head;
            head.prevNode = newNode;
            tail = newNode;
        }
    }

    public void displayPlayist() {
        Node currentNode = head;
        if (head == null) {
            System.out.println("Playlist is empty!");
        } else {
            int songNo = 1;
            while (currentNode != tail) {
                System.out.println("Song " + songNo + ": " + currentNode.data);
                currentNode = currentNode.nextNode;
                songNo++;
            }
            System.out.println("Song " + songNo + ": " + currentNode.data);
        }
    }
}

public class MusicPlayer {
    public static void main(String[] args) {
        CircularDoublyLL playlist = new CircularDoublyLL();

        playlist.insertLast("Song Name 1");
        playlist.insertLast("Song Name 2");
        playlist.insertLast("Song Name 3");
        playlist.insertLast("Song Name 4");
        playlist.displayPlayist();
    }
}

【问题讨论】:

标签: java doubly-linked-list insertion circular-list


【解决方案1】:

对于字符串更改:

class Node {
    int data;
    Node nextNode;
    Node prevNode;
}

class Node {
    String data;
    Node nextNode;
    Node prevNode;
}

class Node {
    Object data;
    Node nextNode;
    Node prevNode;
}

(对象将允许任何数据类型)

【讨论】:

  • 成功了。非常感谢?❤
  • @HovercraftFullOfEels 是的..您也可以使用泛型解决方案。我只是想保持简单。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-04-15
  • 1970-01-01
  • 2020-07-28
  • 2014-11-11
  • 2016-04-11
  • 1970-01-01
  • 2019-05-04
相关资源
最近更新 更多