String
String 是不变对象(final),即:字符串对象一旦创建,内容不可改变
若改变则必须创建新对象
int length()
- 返回当前字符串的长度 (字符个数)
int indexOf(String str)
- 检索并返回给定字符串在当前字符串中第一次出现的位置,
- 如果当前字符串不包含给定的内容时,
- 返回值为-1
int indexOf(String str,Int fromIndex)
检索并给定字符串在当前字符串中返回起始位置为fromIndex后第一次出现的位置
int lastIndexOf(String str) - 检索并返回给定字符串在当前字符串中最后的位置
char charAt(int index)
- 返回当前字符串中指定位置的字符
String提供了一组静态方法valueOf
- 作用是将其他类型转换为String,比较常用的是将基本类型转换为String
- 用法: String str = String.valueOf(int/long/char/boolean…)
String substring(int start,int end)
- 截取当前字符串中指定范围内的字符串,两个参数为下标,
- 注意在API中有一个特点:
- 通常用两个数字表示范围是都是含头不含尾的。
boolean startsWith(String str)
boolean endsWith(String str)
- 判断当前字符串是否是以给定的内容开始或结束的
String trim()
- 去除字符串两边的空白字符
- 用法: String str = str.trim();
String toLowerCase() 转化为小写
String toUpperCase() 转化为大写
- 将当前字符串中的英文部分转化为全大写或者全小写
- 用法 String str = str.toLowerCase();
String由于其优化导致它是不可改变对象,因此频繁修改字符串性能低下。
为了解决这个问题,Java提供了一个专门用于修改字符串的类:
java.lang.StringBuilder
- 其内部维护一个可变的char数组,因此开销小,性能好,并且还提供了修改字符串的方法,
- 常用的:增,删,改,插。
- 同样也包含了字符串中原有的相关操作方法,比如:indexOf,length等等。
- append()追加指定字符串
- replace():替换当前字符串指定范围内的内容
- delete():删除指定范围内的字符串
- insert() 插入指定位置的字符串
- reverse() 字符串反转
String支持的正则表达式方法一:
- boolean matches(String regex)
- 使用给的的正则表达式匹配当前字符串是否符合格式要求,
- 符合则返回true ,否则返回false
- 注:无论正则表达式是否加了边界匹配,都是做完匹配验证的
String 支持正则表达式的方法二:
- String[] split(String regex)
- 将当前字符串按照满足正则表达式的部分进行拆分,
- 并将拆分后的各个部分以String数组形式返回
- 当遇到按照正则表达式关键字符拆分是要注意转义
- 在字符串中如果遇到连续匹配的两个可拆分项时,中间会拆分出一个空的字符串。
- 如果字符串最开始就是拆分项则左侧也会拆分出一个空字符串
- 如果是末尾连续匹配则忽略所有拆分出来的空字符串
String 支持正则表达式的方法三:
- String replaceAll(String regex,String str)
- 将当前字符串中满足正则表达式的部分替换为给的的字符串