java - 链表中会发生什么?

标签 java linked-list singly-linked-list

假设x是一个链表节点。下面的代码片段的作用是什么?

描述或画出与 x 相关的情况?

  1. t.next = x.next; x.next = t;

  2. x.next = x.next.next;

  3. x.next = t; t.next = x.next;

最佳答案

我不能理解你的问题的要点,但你似乎在要求java作业以及它们影响什么以及如何影响。答案是,这取决于你编写片段的顺序。不要混淆通过类初始化,类实例是数据类型,就像整数一样。当您读取它们的值时,您会收到它们在赋值时所具有的值。

在第一种情况下,t.next将指向x.next节点,而x.next将指向t节点。当然,t.next不会受到影响,因为x.next的值在赋值后发生变化,并且会继续指向x.next 一开始是指向开头的,但是在第三种情况下,t.next 会受到影响,会指向自身,因为赋值发生在x.next 初始化之后

第二个例子很明显;你实际上是取出一个指针并将其设置在其他地方。

关于java - 链表中会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58176860/

相关文章:

java - 如何使用 IntelliJ 解决 Scala 中的异常?

java - 如何正确使用repaint()和revalidate()?

c++ - 链表的返回元素

algorithm - 您将如何从单向链表(一次遍历)中的尾部获取第 n 个节点?

java - 打印每个单词在排序字符串单链表中显示的次数

java - LinkedList 最后一个值没有被解析

java - 这个类是单例吗?

java - 如何从 Java 查询 SQL 浏览器服务?

c++ - LinkedList 类中的节点类

c++ - 类体之外的成员函数定义导致错误