[問題] 物件不用配置記憶體直接可以使用嗎?
先貼一下程式碼好了
public class LinkedListProblem<E>
{
private Node<E> head, tail;
private int size;
public LinkedListProblem()
{
size = 0;
}
public void addFirst(E e)
{
Node<E> newNode = new Node<E>(e);
newNode.next = head;
head = newNode;
size++;
if (tail == null)
tail = head;
}
public String toString()
{
StringBuilder result = new StringBuilder("[");
Node<E> current = head;
for (int i = 0; i < size; i++)
{
result.append(current.element);
current = current.next;
if (current != null)
{
result.append(", ");
}
else
{
result.append("]");
}
}
return result.toString();
}
private class Node<E>
{
E element;
Node<E> next;
public Node(E element)
{
this.element = element;
}
}
}
擷取課本上的範例
想請問
成員物件 head 在這個程式碼並沒有被配置記憶體
(new 出實體物件或是有其他記憶體直接assign)
為什麼在addFirst方法中 第二行
可以直接將head物件assign給newNode.next
想來想去實在很奇怪阿~~~~~~~~~(這程式的確可以跑 = =)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.78.114
→
05/14 11:47, , 1F
05/14 11:47, 1F
紙筆?
我想了好久就是不懂為什麼沒有記憶體位置的物件可以assign給另一個物件
※ 編輯: gh8811211 來自: 118.168.78.114 (05/14 11:52)
→
05/14 11:56, , 2F
05/14 11:56, 2F
→
05/14 11:59, , 3F
05/14 11:59, 3F
→
05/14 12:14, , 4F
05/14 12:14, 4F
推
05/14 12:41, , 5F
05/14 12:41, 5F
→
05/14 23:00, , 6F
05/14 23:00, 6F
→
05/14 23:09, , 7F
05/14 23:09, 7F
→
05/14 23:11, , 8F
05/14 23:11, 8F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):