超低价的郑州网站建设,网站选项卡代码,北京网站建设加q.479185700,深圳华大基因公司简介在遇到字符拼接需求时#xff0c;习惯使用StringBuilder,而不要使用String.
因为String是不可变字符序列#xff0c;在拼接时会产生新的String对象来进行拼接 StringBuider是可变字符序列#xff0c;在拼接时效率和对资源的占用都表现更优。
StringBuffer也是可变字符序列…在遇到字符拼接需求时习惯使用StringBuilder,而不要使用String.
因为String是不可变字符序列在拼接时会产生新的String对象来进行拼接 StringBuider是可变字符序列在拼接时效率和对资源的占用都表现更优。
StringBuffer也是可变字符序列它与StringBuider的区别有它更安全会做线程同步检查但是效率较低因为做了检查。
package 常用类学习;public class SStringSsplicing {//记住养成习惯遇到字符串拼接就用 StringBuilderpublic static void main(String[] args) {long num1 Runtime.getRuntime().freeMemory();long time1 System.currentTimeMillis();String S;for (int j1;j5000;j){SSj; //因为String是不可变序列故要拼接5000次就要产生5000个新对象,这对一个上线的系统而言是非常不利的}long num2 Runtime.getRuntime().freeMemory();long time2 System.currentTimeMillis();System.out.println(用String做拼接的后果);System.out.println(内存:(num1-num2));System.out.println(时间:(time2-time1));long num3 Runtime.getRuntime().freeMemory();long time3 System.currentTimeMillis();StringBuilder S2 new StringBuilder();for (int j1;j5000;j){S2S2.append(j);}long num4 Runtime.getRuntime().freeMemory();long time4 System.currentTimeMillis();System.out.println(用StringBuilder做拼接的后果);System.out.println(内存:(num3-num4));System.out.println(时间:(time4-time3));}
}