• 字符串缓冲


    一、StringBuffer

    1、概念

    StringBuffer又称为可变字符序列,它是一个类似于 String 的字符串缓冲区,通过某些方法调用可以改变该序列的长度和内容。

    2、方法

    演示:

    创建一个字符串缓冲区对象。用于存储数据。
    StringBuffer sb = new StringBuffer();
    sb.append("haha"); //添加字符串
    sb.insert(2, "it");//在指定位置插入
    sb.delete(1, 4);//删除
    sb.replace(1, 4, "cast");//替换指定范围内的内容
    String str = sb.toString();

    注意:

    append、delete、insert、replace、reverse方法调用后,返回值都是当前对象自己,所以说,StringBuffer它可以改变字符序列的长度和内容。

     其他:

    public static void main(String[] args) {
            StringBuffer buffer=new StringBuffer("you");
            System.out.println(buffer);
            StringBuffer buffer1=new StringBuffer();
            System.out.println(buffer1);
            //追加
            buffer.append(" are");
            buffer.append(" beautifal ");
            buffer.append(true);
            buffer.append(56);
            System.out.println(buffer);
            //delate包头不包尾
            buffer.delete(3, 14);
            System.out.println(buffer);
            //插入
            buffer.insert(3, " are beauti");
            System.out.println(buffer);
            //替换(包头不包尾)
            buffer.replace(0, 10, " haha ");
            System.out.println(buffer);
            //反转
            buffer.reverse();
            System.out.println(buffer);
            //转成字符串
            String str=buffer.toString();//转成字符串
            System.out.println(str);
            StringBuffer buffer2=new StringBuffer(str);//转回buffer
        }

    练习:

    public static String toString_2(int[] arr) {
            StringBuffer sb = new StringBuffer();        
            sb.append("[");
            for (int i = 0; i < arr.length; i++) {
                if(i!=arr.length-1){
                    sb.append(arr[i]+",");
                }else{
                    sb.append(arr[i]+"]");
                }
            }        
            return sb.toString();
        }

    二、StringBuilder

    StringBuilder和StringBuffer的区别

    StringBuilder它也是一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。

    该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。

    如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快。

    但是,StringBuilder较StringBuffer,安全程度要低。

  • 相关阅读:
    《应用Yii1.1和PHP5进行敏捷Web开发》学习笔记(转)
    YII 小模块功能
    Netbeans代码配色主题大搜集
    opensuse 启动巨慢 解决方法 90s多
    opensuse 安装 网易云音乐 rpm netease music
    linux qq rpm deb opensuse
    openSUSE 安装 alien
    第一行代码 Android 第2版
    Android Studio AVD 虚拟机 联网 失败
    docker error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.29/containers/json: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuratio
  • 原文地址:https://www.cnblogs.com/Ace-suiyuan008/p/9394815.html
Copyright © 2020-2023  润新知