【发布时间】:2014-04-12 10:00:45
【问题描述】:
因此,关于按引用传递/按值传递,方法如何与参数传递一起工作已经有很好的记录,但是变量赋值呢?
例如,我刚刚写了一些代码,如下所示:
TreeNode<T> parent = null;
TreeNode<T> current = m_root;
while(current != null) {
parent = current;
current = current.getRight();
}
现在,我怎么知道parent 在while 循环的最后一次赋值之后不等于current.getRight()?规则是什么?
【问题讨论】:
-
你怎么知道
while循环中的first赋值后null不等于current? -
规则很简单:始终按值传递,Java 中不存在按引用传递。但是:引用也是按值传递的。请注意,按值传递引用与按引用传递不同。
标签: java variable-assignment pass-by-reference pass-by-value