StringBuilder类

简介: String与StringBuilder String类与StringBuilder类原理 StringBuilder构造方法 /* java.lang.StringBuilder类:字符串缓冲区,可以提高字符串的效率 构造方法: StringBuilder() 构造一个没有字符的字符串构建器,初始

String与StringBuilder


  • String类与StringBuilder类原理


微信图片_20220425223957.png


  • StringBuilder构造方法


/*
java.lang.StringBuilder类:字符串缓冲区,可以提高字符串的效率
构造方法:
    StringBuilder() 构造一个没有字符的字符串构建器,初始容量为16个字符。
    StringBuilder(String str) 构造一个初始化为指定字符串内容的字符串构建器。
 */
public class Demo01StringBuilder {
    public static void main(String[] args) {
        //空参数构造方法
        StringBuilder bu1 = new StringBuilder();
        System.out.println("bu1:"+bu1);//bu1: ""
        //带字符串的构造方法
        StringBuilder bu2 = new StringBuilder("abc");
        System.out.println("bu2"+bu2);//bu2: abc
    }
}


  • StringBuilder对象的创建及append()方法,toString()方法


import java.util.Locale;
/*
StringBuilder的常用方法:
    public StringBuilder append(...):添加任意类型数据的字符串形式,并返回当前对象自身
 */
public class Demo02StringBuilder {
    public static void main(String[] args) {
        //创建StringBuilder对象
        StringBuilder bu = new StringBuilder();
        //使用append方法往StringBuilder中添加数据
        //append方法返回的是this,调用方法的对象bu,this==bu
        //StringBuilder bu2 = bu.append("abc");//把bu的地址赋值给了bu2
        //System.out.println(bu);//"abc"
        //System.out.println(bu2);//"abc"
        //System.out.println(bu==bu2);//比较的是地址 true
        //使用append方法无需接收返回值
        //bu.append("abc");
        //bu.append(1);
        //bu.append(true);
        //bu.append(8.8);
        //bu.append('中');
        //System.out.println(bu);//abc1true8.8中
        /*
        链式编程:方法返回值是一个对象,可以继续调用方法
         */
        System.out.println("abc".toUpperCase().toUpperCase().toUpperCase().toLowerCase());
        bu.append("abc").append(1).append(true).append(8.8).append('中');
        System.out.println(bu);
    }
}
====================================================================================
/*
StringBuilder和String可以相互转换:
    String -> StringBuilder:可以使用StringBuilder的构造方法
        StringBuilder(String str) 构造一个初始化为指定字符串内容的字符串构建器。
    StringBuilder -> String:可以使用StringBuilder中的toString方法
        public String toString():将当前StringBuilder对象转换为String对象
 */
public class Demo03StringBuilder {
    public static void main(String[] args) {
        //String -> StringBuilder
        String str = "hello";
        System.out.println("str:"+str);
        StringBuilder bu = new StringBuilder(str);
        //往StringBuilder中添加数据
        bu.append("world");
        System.out.println("bu:"+bu);
        //StringBuilder -> String
        String s = bu.toString();
        System.out.println("s:"+s);
    }
}


相关文章
|
4月前
|
安全 Java 编译器
StringBuilder类和StringJoiner类
StringBuilder类和StringJoiner类
32 2
|
4月前
|
安全 Java
Java StringBuffer 和 StringBuilder 类详解
在 Java 中,`StringBuffer` 和 `StringBuilder` 用于操作可变字符串,支持拼接、插入、删除等功能。两者的主要区别在于线程安全性和性能:`StringBuffer` 线程安全但较慢,适用于多线程环境;`StringBuilder` 非线程安全但更快,适合单线程环境。选择合适的类取决于具体的应用场景和性能需求。通常,在不需要线程安全的情况下,推荐使用 `StringBuilder` 以获得更好的性能。
59 8
|
7月前
|
安全
StringBuffer,StringBuilder的区别及其源码分析
StringBuffer,StringBuilder的区别及其源码分析
|
8月前
StringBuilder和StringBuffer区别是什么?
StringBuilder和StringBuffer区别是什么?
StringBuffer类和StringBuilder类
StringBuffer类和StringBuilder类
65 0
|
8月前
|
安全 Java
|
8月前
|
安全 C#
52.c#:stringbuilder类
52.c#:stringbuilder类
161 1
|
8月前
|
缓存 安全 调度
StringBuilder和StringBuffer的区别
StringBuilder和StringBuffer的区别
|
安全 API 索引
StringBuilder类分享(2)
StringBuilder类分享(2)
|
安全 API
StringBuilder类分享(1)
StringBuilder类分享(1)