我知道對象是通過值傳遞的,但是引用的值。引用在Java中如何工作?
所以說,我有一個類:
//Definition for singly-linked list.
public class ListNode {
int val;
ListNode next;
ListNode(int x) { val = x; }
}
我做這樣的事情:
ListNode n = new ListNode(3);
ListNode n1 = new ListNode(4);
n.next = n1;
所以現在我有一個鏈表:
n -> n1 -> null
現在我做一些假設如:
/* Previous code from above
ListNode n = new ListNode(3);
ListNode n1 = new ListNode(4);
n.next = n1; */
ListNode ref = n;
n = n.next;
ref指向現在?
「我知道對象通過引用傳遞。」不,他們不是。請參閱https://stackoverflow.com/questions/40480 –
'ref'指向當時賦值時'n'參考的引用。所以它是「原始」的'n'。 –
由於'n'指的是自身,因此ref會指向'n' –