public static void main(String[] args) {String str1 = "aaa"; String str2 = "aaa"; String str3 = new String("aaa"); String str4 = str1+""; String str5 = "aa"+"a"; System.out.PRintln(str1 == str3); System.out.println(str1.equals(str3)); System.out.println(str1==str2); System.out.println(str1 == str4); System.out.println(str3 == str4); System.out.println(str1 == str5);/** * String 相加 ==> str4 = str1+""; *//* String str1 = "aaa"; StringBuilder sb = new StringBuilder(); sb.append(str1).append(""); String str4 = sb.toString();*/}结果:
false
true
true
false
false
true
所以有大量“+”的拼接操作时用StringBuilder或者StringBuffer会省下很多内存;
StringBuilder和StringBuffer作用类似,只是StringBuffer的由于增加了同步锁是线程安全的,但是会稍微影响性能;
新闻热点
疑难解答