【发布时间】:2013-12-08 08:29:07
【问题描述】:
在我的类中调用函数时出现以下错误: java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:-1 尽管我使用系统打印来查看我在 substring() 函数中传递的输入,但一切似乎都是正确的。函数 isContained() 返回一个布尔值,定义作为参数传递的子字符串是否在单词列表中。我的代码是:
for(int i=0; i<=size; i++)
for(int j=i+1; j<=size; j++)
if(isContained(str.substring(i,j-i)))
System.out.println(str.substring(i,j-i));
其中size是我在函数中传递的字符串(str)的大小
【问题讨论】:
-
我认为问题出在 i=0 和 j = size 时。
-
你试过调试它吗
-
我认为问题不存在。错误出现在 i=1..
-
尝试调试您的程序。把打印输出(我可以读到你已经尝试过),所以使用调试器。如果您使用的是 Eclipse IDE,它有一个内置的调试器。
-
恐怕我已经做到了