StringBuilder的用法_stringbuilder有哪些方法
String类概述:是一个不可变的字符串
StringBuilder类概述
是一个可变的字符串
StringBuilder类构造方法
StringBuilder(String str) 将不可变字符串转可变字符串
StringBuilder类成员方法
StringBuilder append(数据类型 变量名) 追加内容
String toString(); 将可变字符串转为不可变字符串
String和StringBuilder的选择
如果需要执行拼接操作,使用StringBuilder
如果不需要执行拼接操作,则使用String
示例
public class StringBuilderDemo {
public static void main(String[] args){
// StringBuilder类基本使用
test01();
// String和StringBuilder字符串拼接性能测试
test02();
}
// String和StringBuilder字符串拼接性能测试
public static void test02(){
long start = System.currentTimeMillis();
String str = "abc";
for (int i = 0; i < 10000 ; i++) {
str+=i;
}
System.out.println(System.currentTimeMillis() - start);
start = System.currentTimeMillis();
StringBuilder sb = new StringBuilder("abc");
for (int i = 0; i < 10000 ; i++) {
sb.append(i);
}
System.out.println(System.currentTimeMillis() - start);
}
// StringBuilder类基本使用
public static void test01(){
// 字符串
String str = new String("abc");
// 执行字符串拼接
str += "def";
str += "xxx";
str += 123;
System.out.println(str);
// 如果需要做大量的字符串拼接操作,则强烈推荐使用StringBuilder
StringBuilder sb = new StringBuilder("abc");
// 执行字符串拼接操作
// 链式编程:如果一个方法的返回值类型仍然是一个引用数据类型,则可以继承调用该类型的方法。
sb.append("def").append("xxx").append(123);
System.out.println(sb.toString());
}
}