zoukankan      html  css  js  c++  java
  • String,StringBuffer,StringBuilder的区别

    public static void main(String[] args) {
        String str = new String("hello....");
        StringBuffer stringBuffer = new StringBuffer(str);
        StringBuilder stringBuilder = new StringBuilder();
        
        stringBuffer.append("world").append("!!");
        //System.out.println(stringBuffer.reverse());//字符串反转
        stringBuffer.insert(7, "$$");
        System.out.println(stringBuffer.toString());
        //stringBuffer.delete(start, end)
        
        /**
         * String,StringBuffer,StringBuilder的区别:
         * String类的内容一旦声明则不可改变,StringBuffer,StringBuilder的内容可以改变
         * 三者都是CharSequence接口的子类
         * StringBuffer是从JDK1.0时提供的,属于线程安全的操作,是同步操作,因为方法上有synchronized关键字
         * StringBuilder是从JDK1.5出现的,线程不安全,是异步操作,但效率高
         * 多线程访问同一资源时,必须用StringBuffer
         *
         **/
    }
    
    

    public final class StringBuffer
    extends AbstractStringBuilder
    implements java.io.Serializable, CharSequence

    StringBuffer 的 append()
    @Override
        public synchronized StringBuffer append(String str) {
            toStringCache = null;
            super.append(str);
            return this;
        }

    public final class StringBuilder
    extends AbstractStringBuilder
    implements java.io.Serializable, CharSequence

    StringBuilder 的 append()
    @Override
        public StringBuilder append(String str) {
            super.append(str);
            return this;
        }
  • 相关阅读:
    Yahoo团队经验:网站性能优化的34条黄金法则
    SaltStack中状态间关系unless、onlyif、require、require_in、watch、watch_in
    kubectl 常用命令一
    Linux系统的限制
    DNS服务器搭建与配置
    Python对文件的操作
    SaltStack schedule功能
    saltstack的salt-api介绍
    SaltStack事件驱动 – event reactor
    SaltSack 中Job管理
  • 原文地址:https://www.cnblogs.com/wwzyy/p/5534418.html
Copyright © 2011-2022 走看看