String类
String是在标准Java类库中提供的预定义类,每个用双引号括起来的字符串都是String类的一个实例。
String常用方法
1.比较字符串是否相等
boolean equals(Object other); //如果字符串与other相等,返回true
boolean equalsIgnoreCase(String oyher); //比较忽略大小写
boolean startWith(String prefix); //字符串以prefix开头返回true
boolean endWith(String suffix); //以suffix结尾返回true
2.返回与子串匹配位置
/**
返回与字符串str或代码点cp匹配的**第一个子串**的开始位置。
这个位置从**索引0**或fromIndex开始计算,如果不存在str,返回-1
*/
int indexOf(String str);
int indexOf(String str, int fromIndex);
int indexOf(int cp);
int indexOf(int cp, int fromIndex);
/**
返回与字符串str或代码点cp匹配的**最后一个子串**的开始位置。
这个位置从**原始串尾**或fromIndex开始计算,如果不存在str,返回-1
*/
int lastIndexOf(String str);
int lastIndexOf(String str, int fromIndex);
int lastIndexOf(int cp);
int lastIndexOf(int cp, int fromIndex);
3.字符串修改
/**
返回新字符串,用newString替代原始字符串中所有的oldString
*/
String replace(CharSequence oldString, CharSequence newString);
/**
返回新字符串,包含原始字符串从beginIndex到串尾或endIndex-1的所有代码单元,即长度为endIndex-beginIndex
*/
String substring(int beginInde);
String substring(int beginIndex, int endIndex);
/**
大小写转换
*/
String toLowCase();
String toUpperCase();
/**
返回新的字符串,用给定的界定符连接所有元素
*/
String.join("/","s","m","l"); // s/m/l
4.构建字符串(StringBuilder类)
连接字符串时每次都会构建一个新的String对象,既耗时又浪费空间,使用StringBuilder类可以避免该问题的发生
若需用许多小串构建一个字符串,首先构建一个字符串构建器
StringBuilder builder = new StringBuilder();
/*追加一个字符串或代码单元并返回this*/
StringBuilder append(String str);
StringBuilder append(char c);
/*修改一个单元,将第i个代码单元设置为c*/
void setCharAt(int i,char c);
/*在offset位置插入一个字符串或代码单元并返回this*/
StringBuilder insert(int offset, String str);
StringBuilder insert(int offset, Char c);
/*删除startIndex到endIndex-1的代码单元并返回this*/
StringBuilder delete(int startIndex, int endIndex);
/*返回字符串*/
String toString();