Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
next不能解析为java中的值或字段_Java_Recursion_Circular List - Fatal编程技术网

next不能解析为java中的值或字段

next不能解析为java中的值或字段,java,recursion,circular-list,Java,Recursion,Circular List,我有一个问题: 编写一个递归java函数,以循环方式计算循环中的节点数 链表 以下是方法/功能: public int countNodes(Node node){ if (node == null) { return 0; } else{ return 1+countNodes(node.next); } } 我在电话里听到一个错误 返回1+countNodesnode.next; 这说明:next不能解析为java中

我有一个问题:

编写一个递归java函数,以循环方式计算循环中的节点数 链表

以下是方法/功能:

public int countNodes(Node node){

    if (node == null) {
        return 0;
    }
    else{
            return 1+countNodes(node.next);
    }
}
我在电话里听到一个错误 返回1+countNodesnode.next; 这说明:next不能解析为java中的值或字段


我应该怎么做才能修复此错误?

按照代码的方式,您试图访问一个不存在的字段,名为next in Node。若节点是您创建的类,则添加该字段,或者您是想调用名为next的方法吗?如果是,请执行node。下一步,node类应如下所示:

public class Node {

    private Node next;

    public Node getNext(){
        return next;
    }

    //setter and other stuff


} 
您必须调用node.getNext

 return 1+countNodes(node.getNext());

不要忘记Java是一种面向对象的语言。

下一步是什么?它在哪里定义/声明?它意味着下一个要访问的节点。我必须定义它?可能您没有在节点中定义next,或者它在您的方法中不可见。我如何以及作为什么类型定义next?