String类的常用方法有哪些
在Java中,String类提供了丰富的方法来处理字符串操作。以下是其常用方法的分类总结:
1. 获取字符串信息
-
length()
返回字符串长度(字符数)。
示例:"hello".length()→5 -
charAt(int index)
返回指定索引处的字符(索引从0开始)。
示例:"Java".charAt(2)→'v'
2. 字符串比较
-
equals(Object obj)
比较内容是否相等(区分大小写)。
示例:"java".equals("Java")→false -
equalsIgnoreCase(String str)
忽略大小写比较内容。
示例:"java".equalsIgnoreCase("Java")→true -
compareTo(String str)
按字典顺序比较大小(返回差值:负数/0/正数)。
示例:"a".compareTo("b")→-1 -
compareToIgnoreCase(String str)
忽略大小写的字典顺序比较。
示例:"A".compareToIgnoreCase("a")→0
3. 字符串查找
-
contains(CharSequence s)
是否包含指定字符序列。
示例:"coding".contains("in")→true -
indexOf(String str)
返回子串首次出现的索引(未找到返回-1)。
示例:"apple".indexOf("p")→1 -
lastIndexOf(String str)
返回子串最后一次出现的索引。
示例:"apple".lastIndexOf("p")→2 -
startsWith(String prefix)
是否以指定前缀开头。
示例:"hello".startsWith("he")→true -
endsWith(String suffix)
是否以指定后缀结尾。
示例:"world".endsWith("ld")→true
4. 字符串截取与拆分
-
substring(int beginIndex)
从beginIndex到末尾截取子串。
示例:"hello".substring(1)→"ello" -
substring(int beginIndex, int endIndex)
截取[beginIndex, endIndex)的子串。
示例:"hello".substring(1, 4)→"ell" -
split(String regex)
按正则表达式拆分字符串为数组。
示例:"a,b,c".split(",")→{"a", "b", "c"}
5. 字符串修改
-
concat(String str)
拼接字符串(等价于+)。
示例:"hello".concat(" world")→"hello world" -
replace(char oldChar, char newChar)
替换所有匹配字符。
示例:"banana".replace('a', 'o')→"bonono" -
replace(CharSequence target, CharSequence replacement)
替换所有匹配子串。
示例:"Java".replace("va", "VA")→"JaVA" -
replaceAll(String regex, String replacement)
用正则替换所有匹配子串。
示例:"a1b2".replaceAll("\\d", "0")→"a0b0" -
toLowerCase()/toUpperCase()
转换为小写/大写。
示例:"Java".toUpperCase()→"JAVA" -
trim()
删除首尾空白符(包括空格、制表符\t等)。
示例:" text ".trim()→"text" -
strip()
删除首尾空白符(支持Unicode空白字符,JDK 11+)。
6. 类型转换
-
toCharArray()
转换为字符数组。
示例:"hi".toCharArray()→{'h', 'i'} -
valueOf(基本类型/对象)
将其他类型转为字符串(静态方法)。
示例:String.valueOf(123)→"123"
7. 格式化与正则
-
format(String format, Object... args)
格式化字符串(静态方法)。
示例:String.format("%s:%d", "id", 100)→"id:100" -
matches(String regex)
检查字符串是否匹配正则表达式。
示例:"123".matches("\\d+")→true
8. 其他实用方法
-
isEmpty()
检查字符串是否为空(length() == 0)。
示例:"".isEmpty()→true -
join(CharSequence delimiter, CharSequence... elements)
用分隔符拼接多个字符串(静态方法)。
示例:String.join("-", "2023", "08")→"2023-08" -
repeat(int count)
重复字符串多次(JDK 11+)。
示例:"a".repeat(3)→"aaa"
注意
- 字符串不可变性:所有修改操作(如替换、拼接)均返回新字符串,原字符串不变。
- 正则表达式:
replaceAll()、split()、matches()方法支持正则表达式。
这些方法覆盖了日常开发中字符串操作的绝大部分需求,熟练掌握能极大提升编码效率!

浙公网安备 33010602011771号