关于java常用实用类的习题

想请问一下为什么这个代码运行出来不是“苹果好吃”而是“苹果”啊?

img

因为String的不可变性。modify函数返回的结果并不会改变str原来的值。
你可以用一个字符串接收modify的返回值,例如:

String str1 = modify(str);
System.out.println(str1);

这样输出的str1就是“苹果好吃”

string 一旦创建就是不了变得,你的方法改的是值地址,而不是值本身,main方法里的str与你方法里的s不是同一个东西。传递的是值地址。不是值。