前言
Stringbuffer使用的好处不言而喻,那么我们想要清空stringbuffer对象要怎么操作呢。
具体方法
方法一:StringBuffer buffer = new StringBuffer();
bufferr.append('helloworld'); //添加字符串到StringBuffer中
int length = buffer.length();// 取得字符串的长度
buffer.delete(0,length); //删除字符串从0~sb_length-1处的内容 (这个方法就是用来清除StringBuffer中的内容的)
方法二:buffer.setLength(0); //设置StringBuffer变量的长度为0
方法三:buffer = new StringBuffer() //直接重新new
效率测试private static void testStringBufferclear() {
StringBuffer sbf = new StringBuffer("wwwwww");
StringBuffer sbi = new StringBuffer("wwwwww");
long s1 = System.currentTimeMillis();
for (int i = 0; i < 500000; i++) {
sbi.setLength(0);
}
long s11 = System.currentTimeMillis();
System.out.println("StringBuffer-setLength:" + (s11 - s1));
s1 = System.currentTimeMillis();
for (int i = 0; i < 500000; i++) {
sbf.delete(0, sbf.length());
}
s11 = System.currentTimeMillis();
System.out.println("StringBuffer--delete:" + (s11 - s1));
s1 = System.currentTimeMillis();
for (int i = 0; i < 500000; i++) {
sbf = new StringBuffer("");
}
s11 = System.currentTimeMillis();
System.out.println("StringBuffer--new StringBuffer:" + (s11 - s1));
}
结果StringBuffer-setLength:63
StringBuffer--delete:109
StringBuffer--new StringBuffer:78
结论
要通过使用sbi.setLength(0);来清空StringBuffer对象中的内容效率最高。
你还没有登录,请先使用 QQ登录 或 注册!
文章评论
发表评论