Java实现简单字符生成器代码例子
创建成功的字符串对象,其长度是固定的,内容是不能被修改和编辑。虽然使用"+"可以达到增加新字符或字符串的目的,但"+"会产生一个新的String实例,会在内存中创建新的字符串对象。如果重复地对字符串进行修改,将极大地增加系统开销。J2SE自5.0增加了可变的字符序列String-Builder类,大大地提高了频繁增加字符串的效率。下面看个简单的例子。
publicclassJerque{ /** *比较一般情况下的字符串生成器,和String-Builder所耗的时间 */ publicstaticvoidmain(String[]args){ //TODOAuto-generatedmethodstub Stringstr=""; longstartTime1=System.currentTimeMillis(); for(inti=0;i<10000;i++) { str=str+i; } longendTime1=System.currentTimeMillis(); longtime1=endTime1-startTime1; System.out.println("字符串1消耗时间:"+time1); StringBuilderbuilder=newStringBuilder(""); longstartTime2=System.currentTimeMillis(); for(inti=0;i<10000;i++) { builder.append(i); } longendTime2=System.currentTimeMillis(); longtime2=endTime2-startTime2; System.out.println("字符串2消耗时间:"+time2); } }
字符串1消耗时间:1210
字符串2消耗时间:3
总结:
1.用JAVA自带的字符序列String-Builder类,无疑大大提高了效率。
2.此类常用的方法如下:
a.append(content)方法
b.insert(intoffset,arg)方法
StringBuilderb=newStringBuilder("Hello");
b.insert(5,"World!");
System.out.println(b.tostring());
c.delete(intstart,intend)方法
StringBuilderd=newStringBuilder("StringBuilder");
d.delete(5,10);
System.out.println("d.toString()");