作者:guibar
链接:blog.csdn.net/guibar/arti…?
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
}
} 1234567891011121314151617181920 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);
}
} 123456789101112131415 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 + ''' + '}'; }*/ } 如果你觉得文章还不错,可以关注转发哦,谢谢。