16.StringBuilder

  1. 16.字符串-StringBuilder
    1. 16.1 知识点
      1. StringBuilder是什么
      2. StringBuilder节约性能的体现
      3. StringBuilder中的常用方法
      4. 总结
    2. 16.2 知识点代码

16.字符串-StringBuilder


16.1 知识点

StringBuilder是什么

StringBuilder主要用于处理会频繁修改的字符串。如果你的字符串变量会频繁被修改,建议使用StringBuilder可以帮助我们节约性能。Java中的StringBuilder和C#基本一致。

StringBuilder节约性能的体现

String str = new String("");
long startTime = System.currentTimeMillis();
for (int i = 0; i < 10000; ++i)
    str += i;
long endTime = System.currentTimeMillis();
System.out.println("String拼接消耗的时间:" + (endTime - startTime));//String拼接消耗的时间:448

StringBuilder strBuilder = new StringBuilder("");
startTime = System.currentTimeMillis();
for (int i = 0; i < 10000; ++i)
    strBuilder.append(i);
endTime = System.currentTimeMillis();
System.out.println("StringBuilder拼接消耗的时间:" + (endTime - startTime));//StringBuilder拼接消耗的时间:0

从这个例子可以对比出,在频繁修改字符串时,使用StringBuilder效率会高很多。

StringBuilder中的常用方法

  1. 初始化构造函数
StringBuilder strB = new StringBuilder("");
  1. 拼接字符串append(内容)
strB.append(1);
strB.append("123123123");
  1. 转为String打印 toString()
String str2 = strB.toString();
System.out.println(strB);//1123123123
System.out.println(str2);//1123123123
  1. 插入字符串insert(位置,内容)
strB.insert(1, "韬老狮");
System.out.println(strB);//1韬老狮123123123
  1. 删除指定字符delete(开始位置,结束位置)
    删除的内容为 开始位置~结束位置-1
strB.delete(1, 4);
System.out.println(strB);//1123123123

总结

Java中的StringBuilder的使用和作用和C#中基本一致。如果项目中的字符串会频繁修改,建议使用StringBuilder。


16.2 知识点代码

public class Lesson16_字符串_StringBuilder
{
    public static void main(String[] args)
    {
        //知识点1:StringBuilder是什么?
        //Java中的StringBuilder和C#基本一致
        //主要是用于处理会频繁修改的字符串的
        //如果你的字符串变量会频繁被修改
        //建议使用StringBuilder可以帮助我们节约性能



        //知识点2:StringBuilder节约性能的体现
        String str = new String("");
        long startTime = System.currentTimeMillis();
        for (int i = 0; i < 10000; ++i)
            str += i;
        long endTime = System.currentTimeMillis();
        System.out.println("String拼接消耗的时间:" + (endTime - startTime));//String拼接消耗的时间:448

        StringBuilder strBuilder = new StringBuilder("");
        startTime = System.currentTimeMillis();
        for (int i = 0; i < 10000; ++i)
            strBuilder.append(i);
        endTime = System.currentTimeMillis();
        System.out.println("StringBuilder拼接消耗的时间:" + (endTime - startTime));//StringBuilder拼接消耗的时间:0
        //从这个例子可以对比出,在频繁修改字符串时,使用StringBuilder效率会高很多




        //知识点3:StringBuilder中的常用方法

        //1.初始化构造函数
        StringBuilder strB = new StringBuilder("");

        //2.拼接字符串append(内容)
        strB.append(1);
        strB.append("123123123");

        //3.转为String打印 toString()
        String str2 = strB.toString();
        System.out.println(strB);//1123123123
        System.out.println(str2);//1123123123

        //4.插入字符串insert(位置,内容)
        strB.insert(1, "韬老狮");
        System.out.println(strB);//1韬老狮123123123

        //5.删除指定字符delete(开始位置,结束位置)
        //删除的内容为 开始位置~结束位置-1
        strB.delete(1, 4);
        System.out.println(strB);//1123123123




        //总结
        //Java中的StringBuilder的使用和作用和C#中基本一致
        //如果项目中的字符串会频繁修改,建议使用StringBuilder
    }
}


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com

×

喜欢就点赞,疼爱就打赏