java - 单节点java链表中存储多个变量

标签 java variables nodes singly-linked-list circular-list

我很好奇如何在 java 中将多个整数添加到 LinkedList 中的节点(单循环)。我在 SO 上找到了一个线程并正在阅读它,但不确定它到底是如何工作的。我想我会重新提出这个问题,看看是否能得到答案。

这是我的 Node 类

public class LinkedList{
private class Node{
    private int pid;
    private int time;
    private Node next;

    public Node(int pid, int time){
        this.pid=pid;
        this.time=time;
    }
}
int size;
Node head;

这是我的添加,我只是在进行任何删除或类似操作之前尝试。

public void add(int pid, int time) {
    Node curr=head;
    Node newNode=new Node(pid, time);
    if(head==null){
        head=newNode;
            newNode.next=head;
    }//end if
    else{
        while(curr.next!=head){
            curr = curr.next;
        }//end while
        curr.next=newNode;
            newNode.next=head;
    }//end else
    size++;
}//end add
}

这是我到目前为止所拥有的,但是当我尝试输入两个整数时,我在 private int time 处遇到空指针异常,我做错了什么吗?我正在读取一个文件,然后将两个整数存储在一个节点中,然后执行相同的操作,直到完全读取该文件。我的文件读取得很好,并且我将两个整数存储为文件中的整数,但我似乎还无法让它将整数存储在节点中

最佳答案

你是如何初始化head的?你做了Node head = new Node()吗?

如果创建自定义构造函数,Java 不再添加默认构造函数。你必须再次定义它。

您可以改为执行Node head = null;

关于java - 单节点java链表中存储多个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16127141/

相关文章:

JavaFX有没有更好的方法来获取问号等的键码

java - BufferedReader 在实时读取时打印输入

javascript - 通过字符串调用函数?

javascript - Nodejs,将路由表达为 es6 类

java - 使用 for 循环将使用 DOM 的节点添加到 XML

Java:TreeSet 和 LinkedList 的问题

java - Java 中是否有 C# 的 HttpServerUtility.UrlTokenEncode 的等效项?

variables - Emacs 中的动态项目范围变量

variables - 谷歌分析自定义标识符

python - 如何处理networkx图形中的重叠节点