1、获取字符串的长度 length() 方法:
//public int length()
//返回该字符串的长度
String stringLength="abc";
System.out.println("字符串长度:"+stringLength.length());
//打印输出:
//字符串长度: 3
2、获取字符串某一位置字符 charAt() 方法:
//public char charAt(int index)
//返回字符串中指定位置的字符;注意字符串中第一个字符索引是0,最后一个是length()-1。
String stringCharAt="abc";
System.out.println("字符:"+stringCharAt.charAt(0));
//打印输出:
//字符: a
3、查找子串在字符串中的位置 indexOf() 方法:
//public int indexOf(int ch/String str)
// 返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
String stringIndexOf="abc";
System.out.println("字串在字符串中第一次出现的位置:"+stringIndexOf.indexOf("c"));
//打印输出:
//字串在字符串中第一次出现的位置: 2
//public int indexOf(int ch/String str, int fromIndex)
// 返回从指定的位置开始查找指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
String stringIndexOf="abcad";
System.out.println("从第三个位置开始查找(包含当前位置),字符在字符串第一次出现的位置:"+stringIndexOf.indexOf("a",2));
//打印输出:
//从第三个位置开始查找(包含当前位置),字符在字符串第一次出现的位置: 3
lastIndexOf() 方法:
//public int lastIndexOf(int ch/):
//返回指定字符在此字符串中最后一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
String stringLastIndexOf="abcad";
System.out.println("返回字符a最后出现的位置:"+stringLastIndexOf.lastIndexOf("a"));
//打印输出:
//返回字符a最后出现的位置: 3
4、截取字符串的子串 substring() 方法:
//public String substring(int beginIndex)
// 返回从指定位置起,在当前字符串中取出剩余的字符作为一个新的字符串返回
//返回字符串的子字符串 索引从 0 开始。
String stringSub="abcd";
System.out.println("截取字符串:"+stringSub.substring(2));
//打印输出:
//截取字符串: cd
//public String substring(int beginIndex, int endIndex)
//该方法从“指定位置”,在从当前字符串中取出到“另一个指定位置”的字符作为一个新的字符串返回。
String stringSub="abcd";
System.out.println("截取字符串:"+stringSub.substring(2,3));
//打印输出:
//截取字符串: c
5、对字符串中的字符进行大小写转换 toUpperCase() 方法:
//public String toUpperCase()
//大写转换
String stringUpper="aBcd";
System.out.println("字符串转换为大写:"+stringUpper.toUpperCase());
//打印输出:
//字符串转换为大写: ABCD
toLowerCase() 方法:
//public String toLowerCase()
//小写转换
String stringLower="aBCd";
System.out.println("字符串转换为小写:"+stringLower.toLowerCase());
//打印输出:
//字符串转换为小写: abcd
6、字符串连接 concat() 方法:
//public String concat(String str)
//将参数中的字符串str连接到当前字符串的后面,效果等价于"+"。
String stringConcat="ab";
String stringConcat1="cd";
System.out.println("连接字符串:"+stringConcat.concat(stringConcat1));
//打印输出:
//连接字符串:abcd
7、字符串比较 compareTo() 方法:
//public int compareTo(String anotherString)
//该方法是对字符串内容按字典顺序进行大小比较,通过返回的整数值指明当前字符串与参数字符串的大小关系。若当前对象比参数大则返回正整数,反之返回负整数,相等返回0。
String stringComparTo="abc";
String stringComparTo1="ABC";
System.out.println("字典顺序比较:"+stringComparTo.compareTo(stringComparTo1));
//打印输出:
//字典顺序比较: 32
compareToIgnoreCase() 方法:
//public int compareToIgnore(String anotherString)
//与compareTo方法相似,但忽略大小写。
String stringComparTo="abc";
String stringComparTo1="ABC";
System.out.println("字典顺序比较:"+stringComparTo.compareToIgnoreCase(stringComparTo1));
//打印输出:
//字典顺序比较: 0
equals() 方法:
//public boolean equals(Object anotherObject)
//比较当前字符串和参数字符串,在两个字符串相等的时候返回true,否则返回false。
String string="abc";
String string1="ABC";
System.out.println("正常比较:"+string.equals(string1));
//打印输出:
//正常比较: false
equalsIgnoreCase() 方法:
//public boolean equalsIgnoreCase(String anotherString)
//与equals方法相似,但忽略大小写。
String string="abc";
String string1="ABC";
System.out.println("正常比较:"+string.equalsIgnoreCase(string1));
//打印输出:
//正常比较: true
8、字符串替换 replaceFirst() 方法:
//public String replaceFirst(String regex, String replacement)
//该方法用字符replacement的内容替换当前字符串中遇到的第一个和字符串regex相匹配的子串,应将新的字符串返回。
String stringReplac="abcdeaf";
System.out.println("替换第一个字符:"+stringReplac.replaceFirst("a","b"));
//打印输出:
//替换第一个字符:bbcdeaf
replace() 方法:
//public String replace(char oldChar, char newChar)
//用字符newChar替换当前字符串中所有的oldChar字符,并返回一个新的字符串。
String stringReplac="abcadeaf";
System.out.println("替换全部字符结果:"+stringReplac.replace("a","b"));
//打印输出:
//替换全部字符结果: bbcbdebf
replaceAll() 方法:
//public String replaceAll(String regex, String replacement)
//该方法用字符replacement的内容替换当前字符串中遇到的所有和字符串regex相匹配的子串,应将新的字符串返回。
String stringReplac="abcdeaf";
System.out.println("替换全部字符结果:"+stringReplac.replaceAll("a","M"));
//打印输出:
//替换全部字符结果: MbcdeMf
replace与replaceAll的区别:
replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSequence即字符串序列的意思,说白了也就是字符串);
replaceAll的参数是regex,即基于规则表达式的替换,比如:可以通过replaceAll(“\d”, “*”)把一个字符串所有的数字字符都换成星号;
相同点: 都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串;
不同点: replaceAll支持正则表达式,因此会对参数进行解析(两个参数均是),如replaceAll(“\d”, ““),而replace则不会,replace(”\d","”)就是替换"\d"的字符串,而不会解析为正则。
另外还有一个不同点:
“\” 在java中是一个转义字符,所以需要用两个代表一个。
例如 System.out.println( “\” ) ;只打印出一个 “” 。但是 “\” 也是正则表达式中的转义字符,需要用两个代表一个。
所以:“\\” 被java转换成 “\” , “\” 又被正则表达式转换成 “\” ,因此用replaceAll替换 “\” 为 “\” ,就要用replaceAll( “\\” , “\\\\” ),而replace则replace( “\” , “\\” )。
9、去掉字符串两端的空格 trim() 方法:
String stringTrim=" ab cd ";
System.out.println("去掉字符串两端的空格:"+stringTrim.trim());
//打印输出:
//去掉字符串两端的空格:ab cd
10、判断字符串开头或结尾是否包含当前字符串 startsWith() 方法:
//boolean startsWith(String prefix)
用来比较当前字符串的起始字符是包含当前字符串
String stringBegin="abcdef";
System.out.println("开头是否包含:"+stringBegin.startsWith("ab"));
//打印输出:
//开头是否包含: true
endsWith() 方法:
//boolean endWith(String suffix)
用来比较当前字符串的终止字符是包含当前字符串
String stringEnd="abcdef";
System.out.println("结尾是否包含:"+stringEnd.endsWith("ef"));
//打印输出:
//开头是否包含: true
contains() 方法:
//boolean endWith(String suffix)
用来比较当前字符串的是包含当前字符串
String stringContains="abcdef";
System.out.println("是否包含当前字符:"+stringContains.contains("cd"));
//打印输出:
//是否包含当前字符: true
11、分割字符串 split() 方法:
//String[] split(String str)
//将str作为分隔符进行字符串分解,分解后的字字符串在字符串数组中返回。
String stringSplit="abc#def";
String[] a=stringSplit.split("#");
for (int i = 0; i < a.length; i++) {
System.out.println("分割字符串:"+a[i]);
}
//打印输出:
//字符串:abc
//字符串:def
文章仅用来作记录分享,以上纯属个人见解,如有不当之处,还望指正。
最近开通个人了微信公众号,以后将会定期分享工作学习过程中遇到的问题,欢迎关注与我一道成长交流~:
微信搜索: MYY668999
或 程序猿爱篮球
即可上车。