Java中String类提供开箱即用的实用方法:length()获字符数,charAt()取指定索引字符,isEmpty()判空字符串;indexOf()/lastIndexOf()定位子串,contains()判断包含;substring()截取、trim()去首尾空格;equals()和equalsIgnoreCase()比较内容,startsWith()/endsWith()判断前后缀,compareTo()字典序比较。

Java中String类提供了大量实用方法,覆盖字符串长度获取、内容查找、截取、大小写转换、比较判断、空格处理等核心场景。这些方法都定义在java.lang.String中,无需导包,开箱即用。
获取字符串基本信息
用于读取字符串的结构特征,不修改原字符串。
-
length():返回字符个数(不是字节数),例如
"你好".length()结果为2 -
charAt(int index):按索引取单个字符,索引从0开始;越界抛
StringIndexOutOfBoundsException -
isEmpty():判断是否为空字符串(
""),注意不是null也不是只含空格
查找与定位子串位置
快速定位目标内容在字符串中的起始或结束位置,返回int型索引(-1表示未找到)。
- indexOf(String str):从头向后找第一次出现的位置
- lastIndexOf(String str):从尾向前找最后一次出现的位置
- indexOf(String str, int fromIndex):指定起始位置开始查找
- contains(CharSequence s):直接判断是否包含某子串(内部调用indexOf)
提取与截取子字符串
生成新字符串,原字符串保持不变(String不可变特性体现)。
立即学习“Java免费学习笔记(深入)”;
- substring(int beginIndex):从beginIndex到末尾(含beginIndex)
- substring(int beginIndex, int endIndex):范围为[beginIndex, endIndex),endIndex不包含
- trim():去除首尾连续空白字符(U+0020及部分控制字符),不处理中间空格
内容比较与判断
区分大小写是默认行为,需特别注意==和.equals()的本质差异。
- equals(Object anObject):严格比内容,null安全(null调用会NPE,但推荐先判空)
- equalsIgnoreCase(String anotherString):忽略英文字母大小写
- startsWith(String prefix) 和 endsWith(String suffix):判断前后缀
- compareTo(String anotherString):按字典序比较,返回负数/0/正数










