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() |
返回一个与构建器内容相同的字符串 |