Java核心技术速学版(第3版)
上QQ阅读APP看书,第一时间看更新

1.5.1 拼接

使用 + 运算符可以拼接两个字符串。例如:

String location = "Java";
String greeting = "Hello " + location;

以上两条语句将greeting设置为字符串"Hello Java"。(注意第一个操作数末尾的空格。)

当你将一个字符串与另一个值拼接时,该值将会转换为字符串:

int age = 42;
String output = age + " years";

现在字符串output是"42 years"。

警告:如果混合使用拼接和加法运算,那么可能会得到意想不到的结果。示例如下。

"Next year, you will be " + age + 1 // Error

首先,字符串拼接age,然后再拼接1,因此,最后得到的结果是"Next year, you will be 421"。在这种情况下,需要使用括号。

"Next year, you will be " + (age + 1) // OK

如果要组合多个字符串,并使用分隔符将他们分隔开,请使用join方法:

String names = String.join(", ", "Peter", "Paul", "Mary");
// Sets names to "Peter, Paul, Mary"

join方法的第一个参数是分隔符字符串,后面是要拼接的字符串。它们的数量可以是任意多个,你也可以以字符串数组传递参数(数组在1.8节中有介绍)。如果需要连接大量的字符串,那么这种方法的效率会有些低。在这种情况下,请使用StringBuilder来代替join方法:

var builder = new StringBuilder();
while (more strings) {
builder.append(next string);
}
String result = builder.toString();