字符串常用方法:
1. substring() 截取字符串
String str1 = "0123456";
String result1 = str1.substring(2, 5); //前闭后开,结果 "234"
String result2 = str1.substring(2); //指定位置到结束,结果 "23456"
2. indexof() 查找字符或字符串的位置
String str2 = "ab_cde_fg";
int index1 = str2.indexOf('_'); //第一个查找的字符位置(没有返回-1),结果 2
int index2 = str2.indexOf('_', 3); //从指定位置开始第一个查找的字符位置,结果 6
int index3 = str2.lastIndexOf('_'); //最后一个查找的字符位置,结果 6
int index4 = str2.indexOf("cde"); //第一个查找的子字符串位置,结果 3
3. contains() 是否包含子字符串
String str3 = "hello";
boolean isContain = str3.contains("ell"); //结果 true
4. replace() 替换字符或字符串
String str4 = "hello_lo";
String rp1 = str4.replace('l','5'); //替换全部字符,结果 "he55o_5o"
String rp2 = str4.replaceFirst("l", "5"); //替换第一个字符串,结果 "he5lo_lo"
String rp3 = str4.replaceAll("lo", "AA"); //替换全部字符串(支持正则表达式),结果 "helAA_AA"
5. split() 分割字符串返回字符串数组
注意: .
、 $
、 |
、 *
等转义字符,必须得加 \\
。
String str = "Welcome-to-Beijing";
String[] arrStr = str.split("-"); //以"-"为分隔符,结果 [Welcome, to, Beijing]
arrStr = str.split("-", 2); //以"-"为分隔符设置分割份数为2,结果 [Welcome, to-Beijing]
arrStr = str.split("[-j]"); //以"-"和"j"为分隔符,结果 [Welcome, to, Bei, ing]
6. startsWith() 判断是否以某个字符串开头,或指定下标位置存在
String s1 = "上海烟草有限公司";
boolean b = s1.startsWith("上海");
boolean b2 = s1.startsWith("有限", 4);