Java中的链表 - 在下一个存储地址
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中的链表 - 在下一个存储地址相关的知识,希望对你有一定的参考价值。
java中链表的基本实现是:
class Node{
int element;
Node next;
......
}
我不明白的是,在类本身内声明的类的对象如何能够存储另一个数据成员的地址。不声明Node接下来启用下一个本身有一个元素部分然后再次下一个。这会无限期地发生,对吧?那么它是怎样工作的?
答案
不声明Node接下来启用下一个本身有一个元素部分然后再次下一个。这会无限期地发生,对吧?
这就是这种数据结构的力量。您可以无限期地添加它,而无需像在静态数组中那样调整大小。
如果您想知道,您将如何结束列表?设置Node next
为null和中提琴!你有你的终端节点。
节点内的节点?我可能错了,但Java能够在同一个类中引用一个类实例,因为每个对象基本上都是一个知道其大小的指针。
C ++等价
class A {
A *a;
}
另一答案
在Java中:
1)当我们声明一个类类型的变量时,只创建一个引用,即没有为该对象分配内存。要为对象分配内存,我们使用new()。
2)当将一个对象分配给另一个对象时,仅分配该引用。它不会复制成员变量。
因此,在链接列表中,我们通过将以下节点的引用分配给当前节点的“下一个”字段来链接两个节点。虽然不相关,但我想重要的是要意识到,与数组相比,链表确实需要额外的内存来存储指针变量。
以上是关于Java中的链表 - 在下一个存储地址的主要内容,如果未能解决你的问题,请参考以下文章