如何在Java中操作字符串长度与截取

使用length()获取字符串字符数,substring()按索引截取子串,注意空值与边界检查,结合StringBuilder优化性能。

在Java中处理字符串时,获取长度和截取子字符串是常见操作。掌握这些基础方法能有效提升字符串处理效率。

获取字符串长度

使用 length() 方法可以获取字符串的字符数量。

注意:该方法返回的是字符数,不是字节数,对中文字符也按一个字符计算。

示例:

String str = "Hello Java";
int len = str.length(); // 结果为 10

如果字符串为 null,调用 length() 会抛出 NullPointerException,使用前应先判断是否为空。

截取字符串

Java 提供了 substring() 方法用于截取部分字符串,有两种用法:

  • substring(int beginIndex):从指定位置到末尾
  • substring(int beginIndex, int

    endIndex)
    :从开始位置到结束位置(不包含结束位置)

示例:

String text = "Welcome to Java programming";
String part1 = text.substring(11); // 结果:"Java programming"
String part2 = text.substring(0, 7); // 结果:"Welcome"

索引从0开始,endIndex可选,若超出范围会抛出StringIndexOutOfBoundsException。

实际使用建议

进行字符串操作时,注意以下几点:

  • 截取前检查字符串是否为 null 或长度是否足够
  • 避免频繁拼接或截取大量字符串,考虑使用 StringBuilder
  • 若需按字节截取(如限制数据库字段),需结合getBytes()处理编码问题
基本上就这些,合理使用 length() 和 substring() 能满足大多数场景需求。