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)-----异常与错误处理

Java基础(basis)-----StringBuffer和StringBuilder的区别

Java基础(basis)-----抽象类和接口详解

Java基础(basis)-----关键字breakcontinuereturn的区别

Java基础(basis)-----关键字this和super的作用

SAP BASIS 基础教程 SAP BASIS daily Job SM13,SM37,SM21