组团学

字符串-StringBuilder

阅读 (939441)

1、StringBuilder概述

1.1、什么是StringBuilder

我们如果对字符串进行拼接操作,每次拼接,都会构建一个新的String对象,既耗时,又浪费空间。而StringBuilder就可以解决这个问题。

image20200114160707070.png

1.2、StringBuilder与String区别

String的内容是固定的。StringBuilder的内容是可变的

1.3、StringBuilder构造方法

StringBuilder() 构造一个没有字符的字符串构建器,初始容量为16个字符。 StringBuilder(int capacity) 构造一个没有字符的字符串构建器,以及由 capacity参数指定的初始容量。
StringBuilder(CharSequence seq) 构造一个字符串构建器,其中包含与指定的 CharSequence相同的字符。
StringBuilder(String str) 构造一个初始化为指定字符串内容的字符串构建器。

2、StringBulider常用方法

2.1、常用方法1

public int capacity():返回当前容量,理论值

public int length():返回长度(字符数),实际值

public class StringBuilderDemo01 { public static void main(String[] args) { //创建对象 StringBuilder builder = new StringBuilder(); System.out.println("builder:" + builder); System.out.println("builder.capacity():"+ builder.capacity()); System.out.println("builder.length():"+ builder.length()); System.out.println("---------------------"); //创建对象 StringBuilder builder1 = new StringBuilder("HelloWorld"); System.out.println("builder1:" + builder1); System.out.println("builder1.capacity():"+ builder1.capacity()); System.out.println("builder1.length():"+ builder1.length()); } }

运行结果:

image20200114162544851.png

2.2、常用方法2

添加功能:public StringBuilder append(任意类型):添加数据,并返回自身对象

反转功能:public StringBuilder reverse()

public class StringBuilderDemo02 { public static void main(String[] args) { //创建对象 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); //链式编程 //builder.append("hello").append("world").append(true).append(100); System.out.println("builder:" + builder); //public StringBuilder reverse() builder.reverse(); System.out.println("builder:" + builder); } }

运行结果:

image20200114163231919.png

2.3、与String的相互转换

StringBuilder --> String

public String toString():通过toString()就可以实现把StringBuilder转成String

String --> StringBuilder

StringBuilder(String str):通过构造方法就可以实现把String转成StringBuilder

public class StringBuilderDemo03 { public static void main(String[] args) { //StringBuilder -- String StringBuilder builder = new StringBuilder(); builder.append("Hello").append("World"); String s = builder.toString(); System.out.println(s); //String -- StringBuilder String s1 = "HelloWorld"; StringBuilder builder1 = new StringBuilder(s1); System.out.println(builder1); } }

运行结果:

image20200114163742614.png

需要 登录 才可以提问哦