gpt4 book ai didi

java - 递归计算字符串中的字符数

转载 作者:行者123 更新时间:2023-11-29 08:42:35 27 4
gpt4 key购买 nike

我正在尝试使用递归方法计算字符串中的字符数。这是我在 Java 中的代码

public class MainClass {

public int length(String str) {
if (str == null) {
return 0;
} else {
return length(str.substring(1))+1; // in eclipse it says : at MainClass.length(MainClass.java:12)
}
}

public static void main(String args[]) {
MainClass m = new MainClass();
System.out.println(m.length("ali"));
}
}

这一行不起作用:return length(str.substring(1))+1;我怎样才能更正代码?谢谢

最佳答案

你忘记了你的 String 参数是空字符串的情况,把它包含在你的检查中:

if (str == null || str.length()==0) {
return 0;
} else {
[...]

请注意,您获得的异常包含有关发生问题的有值(value)的信息,在这种情况下,它可能是 StringIndexOutOfBoundsException,因为您在空的情况下调用了 substring(1) String 对象。

关于java - 递归计算字符串中的字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38955644/

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