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