所以我的问题是关于Java中的变量访问速度.今天在我的"CS"(如果你可以称之为)中,老师提出了类似下面的列表示例:
public class ListExample<T> {
private Node<T> head;
private Node<T> tail;
private class Node<T> { /* ... */ }
public void append(T content) {
if (!isEmpty()) {
Node<T> dummy = new Node<T>(content);
head = dummy;
tail = dummy;
head.setNext(head);
// or this
dummy.setNext(dummy);
} else { /* ... */ }
}
// more methods
// ...
}
Run Code Online (Sandbox Code Playgroud)
我的问题是:电话head.setNext(head)会慢dummy.setNext(dummy)吗?即使它不明显.我很想知道这个,因为head很明显,类的实例变量和虚拟是本地的,所以本地访问会更快吗?