java.lang.String & java.lang.StringBuilder
String
public charAr(int index) | 返回给定位置的代码单元 |
public codePointAt(int index) | 返回给定位置的码点 |
int compareTo(String other) | 根据字典序,如果this在other前,返回正数,在后返回负数,相等返回0;和常量比较时,应该把常量写在前面,防止空指针异常 |
boolean equals(String other) | 如果相等,返回true |
boolean equalsIgnoreCase(String other) | 在忽略大小的情况下相等,返回true,和常量比较时,应该把常量写在前面,防止空指针异常 |
boolean startsWith(String prefix) | 以prefix开头,返回true |
boolean endsWithe(String suffix) | 以suffix结尾,返回true |
int indexOf(String str) | |
int indexOf(String str, int fromIndex) | |
int indexOf(int cp) | |
int indexOf(int cp, int fromIndex) | 以上四个是返回子串或者码点匹配的位置 |
int length() | 返回长度 |
String replace(CharSequence old, CharSequence new) | 用new替换old,可以接收String或者StringBuilder作为参数 |
String substring(int beginIndex) | 创建并返回一个新的字符串,从beginIndex直到结尾 |
String substring(int beginIndex, int endIndex) | 创建并返回一个新的字符串,从beginIndex直到endIndex前一个 |
String toLowerCase() | 创建并返回一个新的字符串,全部字母为小写 |
String toUpperCase() | 创建并返回一个新的字符串,全部字母为大写 |
String trim() | 创建并返回一个新的,消去原串的开头结尾的空格 |
String join(CharSequence delimiter, CharSequence ...elemrnts) | 创建返回一个字符串,用给定的定界符连接所有的元素 |
StringBuilder
有时候我们需要使用短的字符串来创建长的字符创,由于字符串是常量,每次使用连接都会创建新的字符创,因此大量的连接字符创会消耗时间和资源(比如String s = s1 + s2 + s3; 会创建s1、s2、s3、s1 + s2、s1 + s2 + s3一共5个字符串),使用StringBuilder可以避免这个问题。
StringBuilder | 构造一个空的字符串构建器 |
int length() | 返回构建器中的代码单元数量 |
StringBuilder append(String str) | 构建器追加一个字符创,并返回this |
StringBuilder append(char c) | 构建器追加一个代码单元,并返回this |
void setCharAt(int i, char c) | 将第i个代码单元设置为c |
StringBuilder inset(int offset, String str) | 在offset位置插入一个字符串,并返回this |
StringBuilder insert(int offset, char c) | 在offset位置插入一个代码单元,并返回this |
StringBuilder delete(int startIndex, int endIndex) | 删除偏移量从startIndex到endIndex - 1的代码单元,返回this |
String toString() | 返回一个与构建器内容相同的字符串 |