这段代码: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);
湖上湖
TA贡献2003条经验 获得超2个赞
因为String是不可变的-类String不包含更改String对象本身内容的方法。该concat()方法返回一个String包含操作结果的新值。代替这个:
s.concat("ING");
尝试这个:
s = s.concat("ING");
侃侃无极
TA贡献2051条经验 获得超10个赞
concat返回一个字符串,因此您基本上是在调用concat而不存储它返回的内容。尝试这个:
String s = "Hello";
String str = s.concat(" World");
System.out.println(s);
System.out.println(str);
应打印:
Hello
Hello World
添加回答
举报
0/150
提交
取消