java 中什么时候用 + 拼接字符串

目录

 

1、什么时候不能用

通过循环和多个表达式完成一个字符串拼接操作。

频繁创建StringBuilder影响性能。

2、什么时候用

直接将三个字面量的字符串拼接成一个字符串。


1、什么时候不能用

通过循环和多个表达式完成一个字符串拼接操作。

频繁创建StringBuilder影响性能。

private void test1() {
    String www = "www.";
    String str = www;
    str += "javastack.";
    str += "com";
}
String sql = "select name, sex, age, address";
sql += "from t_user";
sql += "where age > 18";

提供字节码可以看到,+= 操作使得NEW java/lang/StringBuilder出现了两次,是因为我们在代码中拼接了两次,也就是说每一次拼接操作都会创建一次 StringBuilder

如何查看字节码? https://mp.weixin.qq.com/s/bEEQf7bNik-rBPgK0uhjWg

2、什么时候用

直接将三个字面量的字符串拼接成一个字符串。

private static void test2() {
    String str = "www." + "javastack." + "com";
}
String sql = "select name, sex, age, address"
        + "from t_user"
        + "where age > 18";

 

你可能感兴趣的:(JAVA)