字符串缓冲区被编译器用来实现连接两个字符串的运算符
+
。例如,代码:
x = "a" + 4 + "c"
被编译成等价的:
x = new StringBuffer().append("a").append(4).append("c").toString()
StringBuffer 中的两个基本操作:
-| append 方法常常把这些字符添加到缓冲区的末端
-| insert 方法则把这些字符添加到指定的地方
例如:(1)如果 z 指的是一个字符串缓冲区内的对象 ,其当前的内容是 "
start
",于是通过调用方法
z.append("le")
会使字符串缓冲区的内容变成"
startle
"
(2) z.insert(4, "le") 将使缓冲区的内容变成 "
starlet
"。
(3)每一个字符串缓冲区都有一定的容量。 只要字符串缓冲区存储的字符序列的 长度没有超过它的容量,就无须申请新的内部缓冲数组 。如果内部的缓冲区溢出,它将自动加以扩大。
(4)charAt(int) 返回字符串缓冲区中特定位置的字符。
(5)setCharAt(int, char) 字符串缓冲区指定位置的字符设置为 char 。
(6)toString() 把字符串缓冲区的数据转换为字符串表示。
被编译成等价的:
StringBuffer
-| append
-| insert
例如:(1)如果 z
(2) z.insert(4, "le")
(3)每一个字符串缓冲区都有一定的容量。 只要字符串缓冲区存储的字符序列的 长度没有超过它的容量,就无须申请新的内部缓冲数组 。如果内部的缓冲区溢出,它将自动加以扩大。
(4)charAt(int) 返回字符串缓冲区中特定位置的字符。
(5)setCharAt(int, char) 字符串缓冲区指定位置的字符设置为 char
(6)toString() 把字符串缓冲区的数据转换为字符串表示。