愿你坚持不懈,努力进步,进阶成自己理想的人

—— 2017.09, 写给3年后的自己

String类、StringBuffer类、StringBuilder类总结

三个类均是实现字符串的类,区别在于String类是不可变类,而StringBuffer和StringBuilder均是可变类。StringBuffer是线程安全的,而StringBuilder则没有考虑线程安全,故StringBuilder的性能要略高。

1、String类的常用方法

构造器:String()、String(byte[] bytes, Charset charset)、String(String ori)、String(StringBuffer sb)、String(StringBuilder sb)等…

方法:

  • char charAt(int index),返回下标索引为index的字符
  • int compareTo(String anotherString),与另一个字符串先比较,如果两个字符串存在str1包含str2这种关系,则返回字符串长度的差值;如果str1和str2相等,则返回0,其他情况下则是从顺序开始那一位不等,计算两位ASCII码的差值
  • boolean endsWith(String suffix),判断是否有suffix后缀,同样的,还有类似的方法startsWith()判断是否有前缀xxx
  • int indexOf(int ch/String str, [int fromIndex]):找回字符串中ch字符/str字符串第一次出现的位置,同样类似的有lastIndexOf()
  • String substring(int start, [int end]):截取字符串
  • String toUpperCase():转化为大写,转为小写则为toLowerCase()
  • static String valueOf(X x):将数据类型为X的变量值转为字符串

2、StringBuffer和StringBuilder常用的方法

  • append():在末尾加入
  • insert(int pos, String str):在指定位置插入
  • replace(int from, int to, String str):在指定位置替换
  • delete(int from, int to):在指定位置删除
  • reverse():反转
  • length():返回长度
  • capacity():返回容量
  • setLength():设置长度