在工作当中,String有一些常用的方法,我这里做一下总结,让我们使用起来得心应手;
从下表中可以看出,当需要改变字符串的内容时,Stirng类的方法都会返回一个新的String对象。同时,如果内容没有发生变化,String的方法只是返回指向源对象的引用而已。这可以节约存储空间以及避免额外的开销。
方法 | 参数、重载版本 | 应用 |
构造器 | 重载版本:默认版本、String、StringBuilder、StringBuffer、char数组、byte数组 | 创建String对象 |
length() | Stirng中字符的个数 | |
charAt() | Int索引 | 取得String上该索引位置上的char |
getChars() getBytes() | 要复制部分的起点和终点的索引,复制的目标数组,目标数组的起始索引 | 复制char或byte到一个目标数组中 |
equals() equalsIgnoreCase() | 与之进行比较的String | 比较两个String的内容是否相同 |
toCharArray() | 生成一个Char[]数组,包含String的所有字符 | |
compareTo() | 与之进行比较的String | 按照词典顺序比较String的内容,比较结果为负数、0、正数。注意, 大小写并不等价 |
contains() | 要搜索的CharSequence() | 如果该String对象包含参数的内容,则那会ture |
contentEquals() | 与之进行比较的CharSequence或者StringBuffer | 如果该String与参数的内容安全一致,则返回true |
equalsIgnoreCase() | 与之进行比较的String | 忽略大小写,如果两个String的内容相同,的返回true |
regionMatcher | 该String的索引偏移量,另一个String及其索引偏移量,要比较的长度。重载版本增加 了忽略大小写的功能。 | 返回boolean结果,以表明所比较区域是否相等。 |
startsWith() | 可能的起始String,重载版本在参数中增加了偏移量 | 返回Boolean,以表明该String是否以此参数起始 |
endsWith() | 该String可能的后缀 | 返回boolean,表明该参数是否是该字符串的后缀 |
indexOf() lastIndexOf() | 重载版本包括:char、char与起始索引,String、String与起始索引 | 如果String不包含此参数,则返回-1,否则返回此参数在String中的 起始索引。lastIndexOf是从后往前搜索。 |
substring() (subSequnce()) | 重载版本,起始索引,起始索引加终点坐标 | 返回一个新的String,以包含参数指定的字符串 |
concat() | 要连接的String | 返回一个新的Sring,内容为原始String连接上参数Stirng |
replace() | 要替换掉的字符,用来进行替换的新字符,也可以用一个CharSequence来替换 另一个CharSequence | 返回替换之后的String,如果没有发生替换,则返回原来的String |
toLowerCase() toUpperCase() | 将字符的大小写变换后,返回一个新的String,如果没有发生变化, 则返回原始的String | |
trim() | 将字符两边的空白字符删除之后,返回一个新的String,如果没有 改变发生,则返回原始的String | |
valueOf() | 重载版本:Object;char[];char[],偏移量,与字符个数,boolean;char;int; long;float;double | 返回一个表示参数内容的String |
intern() | 为每个唯一的字符序列生成一个且仅生成一个String的引用 |