String,StringBuffer,StringBuilder详解
分类:
文章
•
2024-05-21 12:35:28
三者区别
String |
StringBuffer |
StringBuilder |
不可变 |
可变 |
可变 |
线程不安全 |
安全,效率低 |
不安全,效率高 |
JDK1.0 |
JDK1.0 |
JDK1.5 |

- 如果要操作少量的数据用 String;
- 多线程操作字符串缓冲区下操作大量数据使用 StringBuffer;
- 单线程操作字符串缓冲区下操作大量数据使用 StringBuilder。
String常用方法

-
equals()
字符串比较
-
trim()
删除空格
-
substring()
截取指定位置的字串。
-
length()
数组长度
-
charAt(index)
返回第指定索引值的字符,索引从0开始
-
concat()
追加字符串
-
equalsIgnoreCase()
忽略大小写比较
-
endsWith()
是否以某字符结束,一般用于检查图片是否以.jpg
或者其他结尾。
-
StartWith()
是否以某字符开始。
-
indexOf("q")
某字符首次出现的位置
-
lastIndexOf("d")
某字符最后依次出现的位置
-
toLowerCase()
变小写toUpperCase()
变大写
StringBuilder

-
append(" ")
拼接
-
insert(2, "小明");
插入
-
sb.delete(2,4);
包头不包尾
-
sb.replace(1,2,"hello");
替换
-
reverse()
倒置
StringBuffer
-
StringBuffer
与StringBuilder
的方法是一样的,区别就在于,StringBuffer
更高效,毕竟是jdk1.5出来的。但是StringBuffer是线程安全的,各有各的用处
