欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

StringBuilder简介

程序员文章站 2022-07-03 19:55:13
StringBuilder构造方法:public StringBuilder(): 构造一个不带任何字符的字符串生成器,其初始容量为16个字符public StringBuilder(String str):构造一个字符串生成器,并初始化为指定的字符串内容常用方法:public StringBuilder append(…): 添加任意类型数据的字符串形式,并返回当前对象本身public class StringBuilderDemo{ public static void main(S...

StringBuilder

构造方法:

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

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

常用方法:

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

public class StringBuilderDemo{
    public static void main(String[] args){
        StringBuilder stringBuilder = new StringBuilder();
        // 使用append方法往字符串缓冲区添加数据
        // append方法返回的是this
        String 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
        
    }
}

StringBuilder可以和String进行相互转换

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

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

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

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

public class StringBuilderDemo01{
    public static void main(String[] args){
        // String -- > StringBuilder
        String str = "Hello World";
        StringBuilder bu = new StringBuilder(str);
        // 添加一些数据
        bu.append("---Java");
        System.out.println("bu:" + bu);
        
        // StringBuilder --> String
        String s = bu.toString();
        System.out.println("s:" + s);
        
    }
}

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

public class StringBuilderDemo02{
    // 构建StringBuilder对象
    String bu = new StringBuilder();
    System.out.println("长度为:" + bu.length); // 0 
    // 调用insert方法
    StringBuilder bu2 = bu.insert(0,"A");
    System.out.println(bu2); // A
    System.out.println(bu == bu2); // true
    System.out.println(bu.length); // 1
    
    bu.insert(1,"B");
    System.out.println("bu2:" + bu2); // AB
    bu.insert(2,true);
    System.out.println(bu); // ABtrue
    System.out.println("bu字符串缓冲区的长度为:" + bu.length); // 6
    System.out.println("bu字符串缓冲区的容量大小为:" + bu.capacity()); //16
    
    Student student = new Student();
    student.setName("小王");
    student.setAge("10");
    bu.insert(6,student);
    System.out.println(bu.length); // 36
    System.out.println(bu); // ABtruecom.zhiyou200.Student@1540e19d
    System.out.println(bu.capacity); // 36 
}



public class Student {
    private int age;
    private String name;

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

   /* @Override
    public String toString() {
        return "Student{" +
                "age=" + age +
                ", name='" + name + '\'' +
                '}';
    }*/
}

本文地址:https://blog.csdn.net/guibar/article/details/110454947

相关标签: java