Java字符串类

String

String对象是不可改变的,字符串一旦创建,内容就不会再改变。
Stringbianlcunchu的是对String的引用,String对象里存储的才是字符串的内容。

String s = "Java";
s = "hello";

思考:以上代码改变字符串的内容了吗?
尽管打印s的结果是”hello”,但是答案是否定的。
因为第一条语句创建”Java”的对象,第二条创建”hello”的对象。对于s来说它只是改变了引用的对象,访问s访问的是”hello”,但是”Java”这个字符串对象仍然存在内存中,并未改变,只是无法访问。

方法 作用
replace() 替换所有匹配的字符串
replaceFirst() 替换第一个匹配的字符串
replaceAll() 替换所有匹配的字符串
split() 返回一个字符串数组,其中包含被分隔的子串集
equals() 匹配字符串
matches() 匹配符合模式模式的字符串,正则表达式
valueOf() 将其他类型转换为字符串
format() 格式化字符串

StringBuilder与StringBuffer

StringBuilder与StringBuffer创建可改变字符串.
单任务访问StringBuilder更有效。
StringBuffer具有同步修改缓冲区的方法,意味着只有一个任务被允许执行方法之外,适用与多任务并发访问。
通常情况下,StringBuilder与StringBuffer都可以相互替代。

方法 作用
aapend() 追加
delete() 删除
insert() 插入
replace() 替换
reverse() 倒置
setCharAt() 索引设为新字符
toString() 返回字符串对象
capacity() 容量
charAt() 指定位置的字符
length() 字符数
setLength() 设置新长度
subString() 返回指定位置的字符串
trimToSize() 减少字符串的存储大小

你可能感兴趣的:(Java笔记)