Java常用类--String类(StringBuilder 和 StringBuffer)介绍

Posted Z && Y

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java常用类--String类(StringBuilder 和 StringBuffer)介绍相关的知识,希望对你有一定的参考价值。

1. StringBuilder 和 StringBuffer


1.1 StringBuilder

概述:

在这里插入图片描述

  • StringBuilder 是一个可变的字符序列。它继承于AbstractStringBuilder,实现了CharSequence接口。StringBuffer 也是继承于AbstractStringBuilder的子类;但是,StringBuilder和StringBuffer不同,前者是非线程安全的,后者是线程安全的。

StringBuilder 和 CharSequence之间的关系图如下:

在这里插入图片描述

常用方法:

1.1.1 insert

在这里插入图片描述在这里插入图片描述


1.1.2 append

在这里插入图片描述在这里插入图片描述
在这里插入图片描述


1.1.3 replace

    /*StringBuilder 的replace()示例 */
    public static void main(String[] args) {
        StringBuilder sbuilder;
        sbuilder = new StringBuilder("0123456789");
        sbuilder.replace(0, 3, "ABCDE");
        System.out.printf("sbuilder=%s\\n", sbuilder);// sbuilder=ABCDE3456789
        sbuilder = new StringBuilder("0123456789");
        sbuilder.reverse();
        System.out.printf("sbuilder=%s\\n", sbuilder);// sbuilder=9876543210
        sbuilder = new StringBuilder("0123456789");
        sbuilder.setCharAt(0, 'M');
        System.out.printf("sbuilder=%s\\n", sbuilder);// sbuilder=M123456789
        System.out.println();
    }

1.1.4 delete

    public static void main(String[] args) {
        StringBuilder sbuilder = new StringBuilder("0123456789");
        // 删除位置0的字符,剩余字符是“123456789”。
        sbuilder.deleteCharAt(0);
        // 删除位置3(包括)到位置6(不包括)之间的字符,剩余字符是“123789”。
        sbuilder.delete(3, 6);
        // 获取sb中从位置1开始的字符串
        String str1 = sbuilder.substring(1);
        // 获取sb中从位置3(包括)到位置5(不包括)之间的字符串
        String str2 = sbuilder.substring(3, 5);
        // 获取sb中从位置3(包括)到位置5(不包括)之间的字符串,获取的对象是CharSequence对 象,此处转型为String
        String str3 = (String) sbuilder.subSequence(3, 5);
        System.out.printf("sbuilder=%s\\nstr1=%s\\nstr2=%s\\nstr3=%s\\n", sbuilder, str1, str2, str3);
    }

在这里插入图片描述


1.1.5 index

在这里插入图片描述


1.1.6 其他API

在这里插入图片描述
在这里插入图片描述


1.2 StringBuffer

和StringBulider用法差不多,不过多介绍,主要看一下三者(String 和StringBuilder 和 StringBuffer)的区别


1.3 Java常用类–String类(String、StringBuffer、StringBuilder)的区别 & 线程安全与非安全



以上是关于Java常用类--String类(StringBuilder 和 StringBuffer)介绍的主要内容,如果未能解决你的问题,请参考以下文章

JAVA StringBuffer 和 StringBuilder 类

Java StringBuffer 和 StringBuilder 类

Java StringBuffer 和 StringBuilder 类

Java StringBuffer 和 StringBuilder 类

java 初识String

String StringBuffer StringBuilder