在Java中创建class类型的变量
在代码中,类节点中有一个在Java中创建class类型的变量,java,Java,在代码中,类节点中有一个节点。我无法理解它到底在做什么。它正在创建一个名为next的对象。当使用nodeA.next=nodeB时,是否有值存储在其中。 我正在努力学习LinkedList,但我无法了解到底发生了什么 class Node{ int data ; Node next; Node(int data){ this.data = data ; } } Node nodeA = new Node(6); Node
节点。我无法理解它到底在做什么。它正在创建一个名为next的对象。当使用nodeA.next=nodeB
时,是否有值存储在其中。
我正在努力学习LinkedList,但我无法了解到底发生了什么
class Node{
int data ;
Node next;
Node(int data){
this.data = data ;
}
}
Node nodeA = new Node(6);
Node nodeB = new Node(3);
Node nodeC = new Node(2);
nodeA.next = nodeB;
nodeB.next = nodeC;
让我们将代码拆分并解释部分:
class Node {
}
这是创建新类的语法。该类被命名为“节点”
这定义了一个实例变量。Node类型的每个实例都应该有一个名为int类型数据的变量
Node next;
这定义了另一个实例变量。它被称为next,并保存对节点的引用
Node(int data){
this.data = data ;
}
这就是所谓的构造函数。它接受一个参数数据,然后存储在实例变量数据中。(实例变量被“this.”引用,因为参数数据隐藏了同名的实例变量。)
这就是课堂本身。现在我们来看一下它的用法(这在类/函数之外没有意义。此类代码应该是函数的一部分,例如在主函数内部):
这将创建类node的3个实例,并将其存储在nodeA、nodeB和nodeC变量中
nodeA.next = nodeB;
nodeB.next = nodeC;
在这里,我们设置nodeA和nodeB的下一个实例变量,并分配nodeB和nodeC
这给了我们一个所谓的链表。列表中的一个元素可以指向另一个元素(或者当列表中没有元素引用时,默认为null)
这有助于理解代码吗?如果没有:您在理解代码时到底遇到了什么问题?我现在就知道了。我对引用和对象感到困惑。
Node nodeA = new Node(6);
Node nodeB = new Node(3);
Node nodeC = new Node(2);
nodeA.next = nodeB;
nodeB.next = nodeC;