Java中带图像的引用 /** *单链表的定义。 *公共类列表节点{ *int-val; *listnodenext; *ListNode(intx){val=x;} * } */ ListNode newNode=null; ListNode nxt=head.next; head.next=newNode java的引用有点像C++中的指针,但它们不一样。 java引用是指一个特定的C++类实例(其位置可能会改变),而C++指针是指一个特定的位置(其内容可以用不同的对象替换)。

Java中带图像的引用 /** *单链表的定义。 *公共类列表节点{ *int-val; *listnodenext; *ListNode(intx){val=x;} * } */ ListNode newNode=null; ListNode nxt=head.next; head.next=newNode java的引用有点像C++中的指针,但它们不一样。 java引用是指一个特定的C++类实例(其位置可能会改变),而C++指针是指一个特定的位置(其内容可以用不同的对象替换)。,java,c++,Java,C++,在这种特殊情况下,差异并不重要;它们都是间接的一种形式,这是这里的重要部分 如果您绘制整个节点,而不仅仅是它们的元素,您将获得更清晰的图像 类似这样的内容(X是空引用) 如您所见,代码取消了列表第一个元素的链接,因此名称“newNode”不是很好。newNode的值为null(它不引用任何内容)下一个< /Cord>将生成头。下一个也有值 null 。为什么C++标签?想到“代码> Cur.No.< /代码>作为存储Curr.@ YSC下一个引用的CURR成员(变量),查看我的问题中的最后一行,

在这种特殊情况下,差异并不重要;它们都是间接的一种形式,这是这里的重要部分

如果您绘制整个节点,而不仅仅是它们的元素,您将获得更清晰的图像

类似这样的内容(
X
是空引用)


如您所见,代码取消了列表第一个元素的链接,因此名称“newNode”不是很好。

newNode
的值为
null
(它不引用任何内容)下一个< /Cord>将生成<代码>头。下一个<代码>也有值<代码> null <代码>。为什么C++标签?想到“代码> Cur.No.< /代码>作为存储Curr.@ YSC下一个引用的CURR成员(变量),查看我的问题中的最后一行,除非您详细阐述了这个“问题”(并且添加一个AOP);)我倾向于说“不,它们不一样——它们很相似,但Java引用不是(仅仅)指针(它们上面没有指针算法,目标可以在内存中移动等等)。”这是一个惊人的答案,非常有用。我拍过这个。
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int x) { val = x; }
 * } 
 */

          ListNode newNode = null;
          ListNode nxt = head.next;
          head.next = newNode; <--- CONFUSION
          newNode = head;
          head = nxt;
+---+---+    +---+---+    +---+---+    +---+---+
| 1 | -----> | 2 | -----> | 3 | -----> | 4 | X |
+---+---+    +---+---+    +---+---+    +---+---+
  ^            ^
  |            |
 head         nxt

head.next = newNode:
+---+---+    +---+---+    +---+---+    +---+---+
| 1 | X |    | 2 | -----> | 3 | -----> | 4 | X |
+---+---+    +---+---+    +---+---+    +---+---+
  ^            ^
  |            |
 head         nxt

newNode = head:        
 newNode
  |
  v
+---+---+    +---+---+    +---+---+    +---+---+
| 1 | X |    | 2 | -----> | 3 | -----> | 4 | X |
+---+---+    +---+---+    +---+---+    +---+---+
  ^            ^
  |            |
 head         nxt

head = nxt:
 newNode      head
  |            |
  v            v
+---+---+    +---+---+    +---+---+    +---+---+
| 1 | X |    | 2 | -----> | 3 | -----> | 4 | X |
+---+---+    +---+---+    +---+---+    +---+---+
               ^
               |
              nxt