String类的常用方法有哪些

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() 方法支持正则表达式。

这些方法覆盖了日常开发中字符串操作的绝大部分需求,熟练掌握能极大提升编码效率!

相关推荐

教程-美图手机(meitu)|Meitu M8
365投注终止

教程-美图手机(meitu)|Meitu M8

01-15 👁️ 2553
如何正确地套车衣
365bet现场滚球

如何正确地套车衣

11-02 👁️ 9490
《梦幻西游》打图最佳等级推荐
365体育旗下APP

《梦幻西游》打图最佳等级推荐

09-22 👁️ 5787
苹果造车为什么会失败?
365体育旗下APP

苹果造车为什么会失败?

01-30 👁️ 2319
冷门但好用的Python库写个爬虫代码
365体育旗下APP

冷门但好用的Python库写个爬虫代码

02-05 👁️ 7425
肺結核|肺癆成全球頭號傳染病 高危群體須警惕! 常見症狀+治療+預防全指南
5分钟就能做一个Excel动态图表,你确定不学学?(纯gif教学)
生死狙击角色—恶灵
365体育旗下APP

生死狙击角色—恶灵

01-16 👁️ 5643
巴塞罗那vs皇家马德里交战记录,巴塞罗那对皇家马德里历史战绩