答案:掌握Java字符串长度与索引需理解length()返回字符数、charAt()按0起始索引取字符,最大索引为length()-1,遍历时需确保索引在[0, length-1]范围内并预先检查null及空字符串以避免异常。

在Java中处理字符串长度和索引,关键在于理解String类提供的方法以及索引的边界规则。字符串是不可变对象,每个字符都有一个从0开始的索引位置,而长度表示字符总数。
获取字符串长度
使用length()方法可以得到字符串中字符的个数。
注意:这个值不是索引,而是字符数量,所以最大有效索引是length() - 1。
-
"hello".length()返回 5 - 空字符串
""的长度是 0 - 调用前建议检查是否为
null,避免抛出NullPointerException
访问指定位置的字符
使用charAt(int index)方法根据索引获取字符。
立即学习“Java免费学习笔记(深入)”;
要点:索引从0开始,必须在有效范围内(0 到 length-1),否则会抛出 StringIndexOutOfBoundsException。
-
"Java".charAt(0)返回 'J' -
"Java".charAt(3)返回 'a' - 如果索引超出范围,比如
charAt(4),程序会报错 - 建议先判断索引是否合法:
if (index >= 0 && index
遍历字符串中的字符
结合length()和charAt(),可以用循环逐个访问字符。
常见做法是使用for循环或增强for(配合转成字符数组)。
- 基本循环方式:
for (int i = 0; i < str.length(); i++) { char c = str.charAt(i); } - 转换为字符数组更高效(尤其频繁访问时):
char[] chars = str.toCharArray(); for (char c : chars) { // 处理每个字符 }
安全处理 null 和空字符串
实际开发中,不能假设字符串一定有内容。提前判断可避免运行时异常。
- 检查是否为 null:
if (str == null) - 检查是否为空:
if (str.isEmpty())或str.length() == 0 - 综合判断:
if (str != null && !str.isEmpty())再进行操作
基本上就这些。掌握length()和charAt()的使用,注意索引边界和null安全,就能稳妥地处理大多数字符串索引问题。不复杂但容易忽略细节。










