StringBuffer类的概述与构造方法
27.1 StringBuffer类
1. 概述:指线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。可将字符串缓冲区安全地用于多个线程。可以在必要时对这些方法进行同步,因此任意特定实例上的所有操作就好像是以串行顺序发生的,该顺序与所涉及的每个线程进行的方法调用顺序一致。
2.StringBuffer类和String类的区别:
String类是一个不可变的字符序列;
StringBuffer类是一个可变的字符序列。
API介绍如图1所示:
图1
27.2 StringBuffer类的构造方法
1. StringBuffer的构造方法:
1.1、public StringBuffer()
无参构造方法,构造一个其中不带字符的字符串缓冲区,其初始容量为 16 个字符;
1.2、public StringBuffer(int capacity)
构造一个不带字符,但具有指定初始容量的字符串缓冲区;
1.3、public StringBuffer(String str)
构造一个字符串缓冲区,并将其内容初始化为指定的字符串内容。该字符串的初始容量为 16 加上字符串参数的长度。
1.4、public StringBuffer(CharSequence seq)public
构造一个字符串缓冲区,它包含与指定的 CharSequence 相同的字符。该字符串缓冲区的初始容量为 16 加上 CharSequence 参数的长度。如果指定的 CharSequence 的长度小于或等于 0,则返回容量为 16 的空缓冲区。
API如图2所示:
图2
2. StringBuffer的常用方法:
2.1、public int capacity()
返回当前容量。容量指可用于最新插入的字符的存储量,超过这一容量就需要再次进行分配。(理论值)
2.2、public int length()
返回长度(字符数)。即此对象表示的当前字符序列的长度。(实际值)
程序演示如图3所示:
图3
感谢支持,我是小区学习录,喜欢点关注。每天根据小编的学习,持续分享学习的笔记与心得。
领取专属 10元无门槛券
私享最新 技术干货