首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于Java节点的基础知识

关于Java节点的基础知识
EN

Stack Overflow用户
提问于 2017-11-06 19:57:01
回答 2查看 100关注 0票数 1

我真的把节点搞糊涂了,每个节点都有一个item数据类型和一个名为next的节点数据类型。当我们有3个节点时,我们想删除exNodes xyz的中间节点。使用x.next=yy.next=zz.next=null。这段代码是做什么的?

代码语言:javascript
复制
Node y=x.next;
x.next=y.next;

我知道它会删除一个节点,但是如何删除呢?在我看来,Node y=x.next制作了y.next=y,但是我们如何删除它呢?因为对于任何答案,x.next=y.next都应该提前显示y节点again.Thanks!

EN

回答 2

Stack Overflow用户

发布于 2017-11-06 20:08:41

next属性看作一种指针(尽管Java语言中的实际术语是引用)。

让我们将每个节点看作一个框,其中包含一个指向另一个框的next引用。

初始情况是:

代码语言:javascript
复制
-------           -------            -------
| x   |           | y   |            | z   |
|  next---------> | next------------>| next----> null
------+           ------+            ------+

现在,当你编写x.next=y.next时,你会得到:

代码语言:javascript
复制
-------           -------            -------
| x   |           | y   |            | z   |
|  next-----+     | next-------+---->| next----> null
------+     |     ------+      |     ------+
            +------------------+

所以节点x指向节点z,节点y被删除而不是删除,但是你不能从x中找到它,也不能从z中找到它,因此你可以说它已经从列表中删除了。

票数 2
EN

Stack Overflow用户

发布于 2017-11-06 20:08:14

考虑X-> Y ->Z,因此X.next指向Y。Y.next指向Z

因此,如果我们设置

代码语言:javascript
复制
X.next=Y.next,
Y.next=null

因为Y.next是Z,所以列表如下,列表如下。X->Z,并且没有指向节点Y的点。

因此,Y不再是列表的一部分,也不再指向列表中的任何节点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47136514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档