gpt4 book ai didi

java - 需要帮助来理解字符串长度逻辑

转载 作者:搜寻专家 更新时间:2023-11-01 01:00:04 26 4
gpt4 key购买 nike

我想了解 String length() 函数在反转字符串时的工作原理。字符串长度为 4 那么为什么我需要在下面的工作代码中给出 length()-1。

下面的代码没有问题,需要帮助来理解 length()

public class MStringReverse {

String getReverse(String input) {
System.out.println(input.length());
String reverse = "";
for(int i = input.length() - 1; i >= 0; i--) {
reverse = reverse + input.charAt(i);
}
return reverse;
}

public static void main(String[] args) {
MStringReverse mr = new MStringReverse();
String result = mr.getReverse("Achilis");
System.out.println(result);
}
}

最佳答案

因为索引从 0 开始,而不是从 1 开始。因此,如果您有一个长度为 4 的字符串,那么 0,1,2,3 是唯一可能的索引。如果您在 charAt() 中作为参数提供的索引是 小于 0大于或等于 字符串的长度,那么您将得到StringIndexOutOfBoundsException 异常。在这里你可以看到 charAt 方法是如何工作的:

public char charAt(int index) {
if ((index < 0) || (index >= value.length)) {
throw new StringIndexOutOfBoundsException(index);
}
return value[index];
}

关于java - 需要帮助来理解字符串长度逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52079468/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com