小编use*_*505的帖子

为什么修改字符串数组元素时字符串没有变化

我无法理解为什么String不能像对象那样工作,以致于当您更改它时,分配给它的变量也会改变。

我尝试制作一个字符串数组,然后将一个元素的引用分配给一个变量(之所以说引用,是因为从我的理解中,Java是按值传递,而内存引用是“值”),
当我更改字符串时元素,该变量不反映更改。

String[] arr={"abc","def"};

String s=arr[1];

arr[1]+="123r";

for (String i:arr) {System.out.print(i);}

System.out.println(); // prints "abcdef123r"

System.out.println(s); //prints "def"
Run Code Online (Sandbox Code Playgroud)

也许,从我一直在阅读的内容来看,赋值运算符不能像Strings那样工作。

java arrays oop

2
推荐指数
1
解决办法
78
查看次数

标签 统计

arrays ×1

java ×1

oop ×1