gpt4 book ai didi

java - 语法 "variable = variable = variable;"发生了什么?

转载 作者:行者123 更新时间:2023-12-02 02:13:27 28 4
gpt4 key购买 nike

好的,我正在阅读一些有关 RedBlackTrees 的代码。我注意到这一行“v1 = v2 = v3 = v4;”我理解类似“v1 += v2”(将 v2 添加到 v1 的当前值)和“v1 = v2”(创建从 v2 到 v1 的引用)等内容。

public void insert( AnyType item )
{
current = parent = grand = header;

但我很好奇 current =parent = grand = header; 的内存/引用中发生了什么

http://faculty.washington.edu/moishe/javademos/REDBlack/RedBTree.java

编辑:晚上 10:46

我还需要等待 10 分钟才能批准问题,抱歉让女士们先生们久等了。

最佳答案

header 的引用值被分配给每个 currentparentgrand。基本上所有变量都引用相同的事物。

顺便说一句,这种做法在现实生活中的编程中常常令人不悦。

考虑一下如果您有这样的代码会发生什么:

boolean flag = false;

if(flag = true) {
System.out.println("true");
} else {
System.out.println("false");
}

这里的输出将为true,因为这里真正发生的是分配而不是比较

关于java - 语法 "variable = variable = variable;"发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10797502/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com