zoukankan      html  css  js  c++  java
  • StringBuffer是字符串缓冲区


    /*
    StringBuffer是字符串缓冲区

    是一个容器。特点:(数据类型不确定,个数不确定可使用)
    1、而且长度是可变化的。
    2、可以直接操作多个数据类型。
    3、最终会通过toString方法变成字符串。
    CURD
    C create U update R read D delete

    1、存储。
    StringBuffer append():将指定数据作为参数添加到已有数据的结尾处。
    StringBuffer insert(index,数据);可以将数据插入到指定index位置
    2、删除
    StringBuffer delete(start,end):删除缓冲区的数据,包含start,不包含end
    StringBuffer deleteCharAt(index);删除指定位置的字符。
    3、获取
    Char charAt(int index);
    int indexOf(String str);
    lastIndexOf(String str);
    int length();
    String substring(int start,int end); 返回String
    4、修改.

    StringBuffer replace(start,end,string);
    void setCharAt(int index,char ch)

    5、反转。
    StringBuffer reverse();

    6、将缓冲区中指定数据存储到指定字符数组中。
    void getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
    目的 目的开始位
    jdk1.5版本之后出现了StringBuffer

    StringBuffer是线程同步
    StringBuilder是线程不同步 提高效率 方法一样,只是没有锁

    以后开发建立,使用StringBuilder


    java的升级三个因素:
    1、提高效率;
    2、简化书写;
    3、提高安全性。
    */

    public class StringBufferDemo {
        
        public static void sop(Object obj)
        {
            System.out.println(obj);
        }
    
        public static void main(String[] args) {
            //method_update();
            StringBuilder sb = new StringBuilder("abcdef");
            char[] chs = new char[6];
            sb.getChars(1, 4, chs, 1);
            
            for(int x=0;x<chs.length;x++) 
            {
                sop("chs["+x+"]="+chs[x]+";");
            }
        }
        
        public static void method_update()
        {
            StringBuffer sb = new StringBuffer("abcde");
            //sb.replace(1, 4, "java");
            sb.setCharAt(2, 'k');
            
            sop(sb.toString());
        }
        public static void method_del()
        {
            StringBuffer sb = new StringBuffer("abcde");
            //sb.delete(1, 3);
            //清空缓冲区!!!
            //sb.delete(0, sb.length());
            sb.delete(2, 3);
            //sb.deleteCharAt(2);
            sop(sb.toString());
        }
        public static void method_add()
        {
            StringBuffer sb = new StringBuffer();
            //方法调用链 ,返回还是对象所以能够调用方法
            sb.append("abc").append(true).append(34);
    //        StringBuffer sb1 = sb.append(34);
    //        //sop("sb==sb1"+sb==sb1);
            StringBuffer insert = sb.insert(1,"qq");
            sop(sb.toString());//abctrue34
            
    //        sop(sb1.toString());
        }
    
    }
  • 相关阅读:
    PE文件解析器的编写(二)——PE文件头的解析
    PE解析器的编写(一)——总体说明
    PE文件详解(九)
    PE文件详解(八)
    06_建造者模式
    05_模板方法模式
    04_抽象工厂模式
    03_简单工厂模式(静态工厂模式)
    02_工厂方法模式
    01_单例模式
  • 原文地址:https://www.cnblogs.com/cailingsunny/p/4695092.html
Copyright © 2011-2022 走看看