gpt4 book ai didi

java - 关于Java中的String对象和按值传递

转载 作者:行者123 更新时间:2023-12-01 12:52:42 24 4
gpt4 key购买 nike

我知道java是按值传递的,当我将一个对象传递给方法并更改它时,当我退出方法时它也会改变。但我不能用 String 做到这一点目的。这是示例:

public class text 
{
public void change(String a)
{
a = "ha";
}

public static void main(String[] args)
{
text a = new text();
String b = "hi";
a.change(b);
System.out.println(b);
}
}

最佳答案

a = "ha";

该声明类似于:

a = new String("ha");

因此,即使 String 不是不可变的,您现在也会遇到将 a 指向新 String 对象的问题。

这里发生的只是“编译器魔法”或“语法糖”,以使声明字符串变得更容易。

关于java - 关于Java中的String对象和按值传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24101988/

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