StringBuffer和StringBuilder
Posted 摘星丶仙
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了StringBuffer和StringBuilder相关的知识,希望对你有一定的参考价值。
可变字符串
- StringBuffer:可变长字符串,JDK1.0提供,运行效率慢、线程安全。
- StringBuilder:可变长字符串,JDK5.0提供,运行效率快、线程不安全。
/**
* StringBuffer和StringBuilder的使用
* 和String区别:(1)效率比String高(2)比String节省内存
*/
public class Demo5
public static void main(String[] args)
// StringBuffer sb = new StringBuffer();
StringBuilder sb = new StringBuilder();
//1.append():追加
sb.append("java世界第一");
System.out.println(sb.toString());
sb.append("java真香");
System.out.println(sb.toString());
//2.insert():添加
sb.insert(0,"我在最前面");
System.out.println(sb.toString());
//3.replace():替换
sb.replace(0,5,"hello");
System.out.println(sb.toString());
//delete():删除
sb.delete(0,5);
System.out.println(sb.toString());
//清空
sb.delete(0,sb.length());
System.out.println(sb.toString());
/**
* 验证StringBuffer效率高于String
*/
public class Demo6
public static void main(String[] args)
//开始时间
long start = System.currentTimeMillis();
// String string = "";
// for (int i = 0; i < 99999; i++)
// string += i;
//
// System.out.println(string);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < 99999; i++)
sb.append(i);
System.out.println(sb.toString());
long end = System.currentTimeMillis();
System.out.println("用时:" + (end - start));
以上是关于StringBuffer和StringBuilder的主要内容,如果未能解决你的问题,请参考以下文章
StringBuffer 和 StringBuilder 总结