Java中常用的String类有哪些方法_JavaString常用API详解

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不可变特性体现)。

  • 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/正数