三者区别
| 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是线程安全的,各有各的用处

相关文章: