StringBuilder简介,你都知道多少?

作者:guibar

链接:https://blog.csdn.net/guibar/article/details/110454947?

StringBuilder

构造方法:

public StringBuilder(): 构造一个不带任何字符的字符串生成器,其初始容量为16个字符

public StringBuilder(String str):构造一个字符串生成器,并初始化为指定的字符串内容

常用方法:

public StringBuilder append(…): 添加任意类型数据的字符串形式,并返回当前对象本身

publicclassStringBuilderDemo{publicstaticvoidmain(String[] args){        StringBuilder stringBuilder =newStringBuilder();// 使用append方法往字符串缓冲区添加数据// append方法返回的是thisString stringBuilder1 = stringBuilder.append("cnm");        System.out.println(stringBuilder);        System.out.println(stringBuilder1);        System.out.println(stringBuilder == stringBuilder1);// true// == 比较的是内存地址// 使用append方法再添加一些数据,无需接收返回值stringBuilder.append(1);        stringBuilder.append(true);        stringBuilder.appeend(3.14);        stringBuilder.append('W');        System.out.println(stringBuilder1);// cnm1true3.14W 等同于stringbuilder}}1234567891011121314151617181920

StringBuilder可以和String进行相互转换

String --> StringBuilder:可以使用StringBuilder的带参构造方法

StringBuilder(String str):构造一个字符串生成器,并初始化为指定的字符串内容

StringBuilder–>String:可以使用StringBuilder类中的toString()方法

public String toString(): 将当前的StringBuilder对象转换成String对象

publicclassStringBuilderDemo01{publicstaticvoidmain(String[] args){// String -- > StringBuilderString str ="Hello World";        StringBuilder bu =newStringBuilder(str);// 添加一些数据bu.append("---Java");        System.out.println("bu:"+ bu);// StringBuilder --> StringString s = bu.toString();        System.out.println("s:"+ s);            }}123456789101112131415

public StringBuilder insert(int offset,…)根据指定的位置插入任意类型数据的字符串形式;不管存储什么类型的数据,进入到字符串缓冲区都变成了字符串值。

publicclassStringBuilderDemo02{// 构建StringBuilder对象String bu =newStringBuilder();    System.out.println("长度为:"+ bu.length);// 0 // 调用insert方法StringBuilder bu2 = bu.insert(0,"A");    System.out.println(bu2);// ASystem.out.println(bu == bu2);// trueSystem.out.println(bu.length);// 1bu.insert(1,"B");    System.out.println("bu2:"+ bu2);// ABbu.insert(2,true);    System.out.println(bu);// ABtrueSystem.out.println("bu字符串缓冲区的长度为:"+ bu.length);// 6System.out.println("bu字符串缓冲区的容量大小为:"+ bu.capacity());//16Student student =newStudent();    student.setName("小王");    student.setAge("10");    bu.insert(6,student);    System.out.println(bu.length);// 36System.out.println(bu);// [email protected](bu.capacity);// 36 }publicclassStudent{privateintage;privateString name;publicintgetAge(){returnage;    }publicvoidsetAge(intage){this.age = age;    }publicStringgetName(){returnname;    }publicvoidsetName(String name){this.name = name;    }/* @Override

    public String toString() {

        return "Student{" +

                "age=" + age +

                ", name='" + name + '\'' +

                '}';

    }*/}

如果你觉得文章还不错,可以关注转发哦,谢谢。

你可能感兴趣的:(StringBuilder简介,你都知道多少?)