Java基础(basis)-----StringBuffer和StringBuilder的区别
Posted fengfuwanliu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础(basis)-----StringBuffer和StringBuilder的区别相关的知识,希望对你有一定的参考价值。
1. StringBuffer和StringBuilder的相同点
- 都继承AbstractStringBuilder类
- StringBuffer和StringBuilder都是内容可变的
- StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象
2. StringBuffer和StringBuilder的不同点
- StringBuffer是线程安全的,StringBuilder是线程非安全的
- StringBuilder的效率高于StringBuffer
package com.practice; import java.util.Arrays; /** * 可变字符串 * * @author yyx 2019年8月28日 */ public class Practice public static void main(String[] args) /* * @Override * public synchronized String toString() * if (toStringCache == null) * * toStringCache = Arrays.copyOfRange(value, 0, count); * * return new String(toStringCache, true); * */ StringBuffer stringBuffer = new StringBuffer(); stringBuffer.append("中国"); stringBuffer.append("China"); System.out.println(stringBuffer.toString()); /* * @Override public String toString() return new String(value, 0, count); */ StringBuilder stringBuilder = new StringBuilder(); stringBuilder.append("中国"); stringBuilder.append("China"); System.out.println(stringBuilder.toString());
以上是关于Java基础(basis)-----StringBuffer和StringBuilder的区别的主要内容,如果未能解决你的问题,请参考以下文章
Java基础(basis)-----StringBuffer和StringBuilder的区别
Java基础(basis)-----关键字breakcontinuereturn的区别