String,StringBuffer,StringBuilder详解

三者区别

  • 区别
String StringBuffer StringBuilder
不可变 可变 可变
线程不安全 安全,效率低 不安全,效率高
JDK1.0 JDK1.0 JDK1.5
  • 继承关系

在这里插入图片描述

  • 使用技巧
  1. 如果要操作少量的数据用 String;
  2. 多线程操作字符串缓冲区下操作大量数据使用 StringBuffer;
  3. 单线程操作字符串缓冲区下操作大量数据使用 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

  • StringBufferStringBuilder的方法是一样的,区别就在于,StringBuffer更高效,毕竟是jdk1.5出来的。但是StringBuffer是线程安全的,各有各的用处

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44861399/article/details/106312075