为了账号安全,请及时绑定邮箱和手机立即绑定

为什么Java的concat()方法什么都不做?

为什么Java的concat()方法什么都不做?

慕标5832272 2019-12-06 11:09:01
这段代码:String s = "TEST";String s2 = s.trim();s.concat("ING");System.out.println("S = "+s);System.out.println("S2 = "+s2);结果如下:S = TESTS2 = TESTBUILD SUCCESSFUL (total time: 0 seconds)为什么“ TEST”和“ ING”没有连接在一起?
查看完整描述

3 回答

?
拉莫斯之舞

TA贡献1820条经验 获得超10个赞

String是不可变的,这意味着您无法在Java中更改String。concat()返回一个新的,串联的字符串。


String s = "TEST";

String s2 = s.trim();

String s3 = s.concat("ING");


System.out.println("S = "+s);

System.out.println("S2 = "+s2);

System.out.println("S3 = "+s3);


查看完整回答
反对 回复 2019-12-06
?
湖上湖

TA贡献2003条经验 获得超2个赞

因为String是不可变的-类String不包含更改String对象本身内容的方法。该concat()方法返回一个String包含操作结果的新值。代替这个:


s.concat("ING");

尝试这个:


s = s.concat("ING");


查看完整回答
反对 回复 2019-12-06
?
侃侃无极

TA贡献2051条经验 获得超10个赞

concat返回一个字符串,因此您基本上是在调用concat而不存储它返回的内容。尝试这个:


String s = "Hello";

String str = s.concat(" World");

System.out.println(s);

System.out.println(str);

应打印:


Hello

Hello World


查看完整回答
反对 回复 2019-12-06
  • 3 回答
  • 0 关注
  • 682 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信