java - 为什么 'concat'不改变字符串?

标签 java string concatenation

String s1 = "Sk";
s1.concat(" Y");
System.out.println("s1 refers to "+s1);

上面的代码生成输出“Sk”而不是“Sk Y”。我希望我解释得足够清楚。这是为什么?

最佳答案

s1.concat("Y"); 不会改变 s1 (它不能,因为字符串是不可变的)。

它返回一个新字符串:

String s2 = s1.concat(" Y");
System.out.println("s2 refers to "+s2);

关于java - 为什么 'concat'不改变字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31097918/

相关文章:

java - 文本组件内容一段时间没有编辑时调用方法

java - SQL 更新无法正常工作

java - Spring JPA/Hibernate EmptyInterceptor 不注入(inject) Entitymanager/Spring beans

java - 如何同步Oracle数据库中的两个表?

c# - 如何在 string.format 操作中格式化参数

mysql - 在 MySQL 中将多行连接成单行

python - 如何在 Python 中打印 "Pretty"字符串输出

c++ - 带数组的字符串

python - numpy array - 使用 np.concatenate 或 np.insert 将零行添加到 ndarray

mysql - CONCAT(MySql 存储过程)内的输出参数