在Java中更改字符串

我想将一个字符串发送到方法并在那里更改字符串.
方法应返回void.
例:
String s = "Hello";
ChangeString(s);

String res = s;
//res = "HelloWorld"
-------------------------------------------

private void ChageString(String s){
s = s + "World";
}

我怎么能用Java做呢?
可以在不添加其他类的情况下完成吗?

谢谢!
PB

解决方法

您的方法无法使用当前界面,原因有两个:

>字符串是不可变的.创建字符串后,您无法在以后更改该字符串对象.
> Java使用pass-by-value,而不是pass-by-reference.在方法中为s分配新值时,它只修改本地s,而不是修改调用代码中的原始s.

要使方法有效,您需要更改界面.最简单的更改是返回一个新字符串:

private String changeString(String s){
    return s + "World";
}

然后像这样称呼它:

String s = "Hello";
String res = changeString(s);

看到它在线工作:ideone

相关文章

Java中的String是不可变对象 在面向对象及函数编程语言中,不...
String, StringBuffer 和 StringBuilder 可变性 String不可变...
序列化:把对象转换为字节序列的过程称为对象的序列化. 反序...
先说结论,是对象!可以继续往下看 数组是不是对象 什么是对...
为什么浮点数 float 或 double 运算的时候会有精度丢失的风险...
面试题引入 这里引申出一个经典问题,看下面代码 Integer a ...