gpt4 book ai didi

java - 在数组中赋值

转载 作者:行者123 更新时间:2023-12-01 13:21:00 25 4
gpt4 key购买 nike

下面的代码打印“YYYY”,但对于我的生活,我无法理解为什么。最后一行打印存储在first中的两个值,但我没有看到first的值在哪里改变。

String[] first = {"x", "y"};
String[] second = first;
second[0]=first[1];
second[1]=first[0];
System.out.println(first[0]+first[1]+second[0]+second[1]);

最佳答案

您创建数组{x,y},并将指向该数组的指针存储在名为first的变量中

String[] first = {"x", "y"};

然后将变量 first 的值(即 POINTER)复制到变量 second 中。两个变量都指向相同的结构,即本例中的 {x,y}

String[] second = first;

您说存储在您指向的数组中第二个单元格中的内容被复制到第一个单元格中。将 y 复制到第一个单元格,此时,您有 {y,y}

second[0]=first[1];

与之前类似,但它不会改变任何内容(您已经有了 {y,y})

second[1]=first[0];

我希望结果是显而易见的:)

System.out.println(first[0]+first[1]+second[0]+second[1]);

关于java - 在数组中赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22030205/

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