java 等号和concat的差异

        String str1 = "abc";
        System.out.println(str1 + null); 
        System.out.println(null + str1); 
        // abcnull  nullabc

        String str2 = null;
        System.out.println(str2.concat("abc"));
        System.out.println("abc".concat(str2));
        //NullPointerException  NullPointerException
  1. + 可以连接 null,连接时将null视为一个字符串连接,concat连接中出现null,会造成空指针错误。
  2. +号编译后就是使用了StringBuiler来拼接,所以使用+的语句就会创建一个StringBuilder,多条+语句会创建多个StringBuilder对象,这就是建议使用StringBuilder的原因。

猜你喜欢

转载自blog.csdn.net/ai_shuyingzhixia/article/details/80728804