Java : 字符串连接
Java : String Concatenation
我找到了这段代码
public class StringDemo {
public static void main(String[] args) {
String s = "Hello";
s.concat("world");
System.out.println(s);
}
}
并认为输出应该是
Helloworld
但它只打印
Hello
这背后的原因是什么?
字符串是不可变对象。这意味着无论您打印多少次,您的 String 都不会改变。那么 concat 方法做了什么呢?当您查看 api (http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#concat(java.lang.String)) 时,您会看到 concat on string 的结果是一个新字符串,因此这会 return 您所期望的:
public class StringDemo {
public static void main(String[] args) {
String s = "Hello";
String newS = s.concat("world");
System.out.println(newS);
}
}
我找到了这段代码
public class StringDemo {
public static void main(String[] args) {
String s = "Hello";
s.concat("world");
System.out.println(s);
}
}
并认为输出应该是
Helloworld
但它只打印
Hello
这背后的原因是什么?
字符串是不可变对象。这意味着无论您打印多少次,您的 String 都不会改变。那么 concat 方法做了什么呢?当您查看 api (http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#concat(java.lang.String)) 时,您会看到 concat on string 的结果是一个新字符串,因此这会 return 您所期望的:
public class StringDemo {
public static void main(String[] args) {
String s = "Hello";
String newS = s.concat("world");
System.out.println(newS);
}
}