所以基本上,我创建了一个 contains 方法,它打印出我需要的正确输出,但是在它这样做之后它给了我一个错误:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
at MethodTesting.main(MethodTesting.java:90)
不知道为什么当它显示输出时不用担心?如果有人可以让我知道我做错了什么?我的代码在下面,我尝试将长度调整为长度和长度-1,如下所示。我用字符串而不是 char 数组编写了代码,但是它不会给我正确的结果。希望有人能解释一下吗?
//contains method
char[] st = "Hello World".toCharArray();
char[] substr = "llo".toCharArray();
for(int contains=0; contains<st.length-1; contains++){
if(substr[contains] == st[contains]){
for(int j=contains; j<st.length-1; j++){
if(st[j] == substr[j]){
}
else{
contains = -1;
}
}
}
System.out.println("CONTAINS");
System.out.println(contains);
}
提前致谢!