Java中的StringBuilder类

  1. 概述
  2. 构造方法
  3. 常用方法
    1. append方法
    2. toString方法

概述

API描述:一个可变的字符序列。此类提供一个与 StringBuffer 兼容的 API,但不保证同步。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候(这种情况很普遍)。如果可能,建议优先采用该类,因为在大多数实现中,它比 StringBuffer 要快。

  • 将 StringBuilder 的实例用于多个线程是不安全的。如果需要这样的同步,则建议使用 StringBuffer

如果用String类对字符串进行拼接操作,接每次拼接,都会构建一个新的,未必用得上的String对象,既耗时,又浪费空间。为了解决这一问题,可以使用java.lang.StringBuilder类。


构造方法

  • public StringBuilder():构造一个空的StringBuilder容器,初始容量为16个字符。

  • public StringBuilder(String str):构造一个StringBuilder容器,并将字符串添加进去。

    public class StringBuilderDemo {
        public static void main(String[] args) {
            StringBuilder sb1 = new StringBuilder();
            System.out.println(sb1); // (空白)
            // 使用带参构造
            StringBuilder sb2 = new StringBuilder("好好学习");
            System.out.println(sb2); // 好好学习
        }
    }

常用方法

  • public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前对象自身。
  • public String toString():将当前StringBuilder对象转换为String对象。

append方法

append方法具有多种重载形式,可以接收任意类型的参数。任何数据作为参数都会将对应的字符串内容添加到StringBuilder中。

//创建对象
StringBuilder builder = new StringBuilder();
//public StringBuilder append(任意类型)
StringBuilder builder2 = builder.append("hello");
//对比一下
System.out.println("builder:"+builder);
System.out.println("builder2:"+builder2);
System.out.println(builder == builder2); //true
// 可以添加 任何类型
builder.append("hello");
builder.append("world");
builder.append(true);
builder.append(100);
// 在我们开发中,会遇到调用一个方法后,返回一个对象的情况。然后使用返回的对象继续调用方法。
// 这种时候,我们就可以把代码现在一起,如append方法一样,代码如下
//链式编程
builder.append("hello").append("world").append(true).append(100);
System.out.println("builder:"+builder);

toString方法

通过toString方法,StringBuilder对象将会转换为不可变的String对象。


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

文章标题:Java中的StringBuilder类

字数:550

本文作者:百xiao生

发布时间:2020-11-13, 17:01:30

最后更新:2020-12-07, 15:09:09

原始链接:https://baixiaoshengzjj.top/2020/11/13/Java%E4%B8%AD%E7%9A%84StringBuilder%E7%B1%BB/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。