String、StringBuilder和StringBuffer用法和区别

String、StringBuilder和StringBuffer是开发中常用的类,面试当中也常会被问及到,记录一下他们的用法和区别方便以后应用。

1、用法

String strConstant = "Java学习";

String strSum = strC + strE;

StringBuilder builer = new StringBuilder();

builder.append(strC).append(strE);

StringBuffer buffer = StringBuffer();

buffer.append(strC).append(strE);

2、比较

代码执行耗时比较:String > StringBuilder > StringBuffer

String执行速度最慢的原因是:String是字符串常量,一旦创建就不可修改,对String类型的变量进行操作实际上是重新创建新对象,旧对象被回收。

StringBuilder和StringBuffer 对对象进行操作的时候不会有创建和回收的过程,因此执行效率较高,StringBuilder对象不考虑线程问题,StringBuffer的方法中都进行了同步处理,因此StringBuilder执行效率高于StringBuffer。因此单线程操作字符串尽量使用StringBuilder,但是多线程操作同一个字符串时则需要使用StringBuffer。

 

 

你可能感兴趣的:(学习笔记-android点滴,Android)