public class CeShi{
public static void main(String[] args){
String  a = "java";
int count = 0;
int index = -1;
String str = "sunjavahpjavaokjavajavaandjavahahajavagoodjava";
/*String str = "sunjavahpjavaokjavajavahahajavagoodjava";
在字符串中多加了一个javaand就报异常,如果不加and就不会报错*/
System.out.println(str.indexOf(a));

while((index = str.indexOf(a))!= -1){
str = str.substring(index+str.indexOf(a));
count++;
}
System.out.println(count);
}
}查找了大量资料都没有弄懂,求大神指点一下,本人自学不容易啊!

解决方案 »

  1.   

    代码写错了,贴上代码package csdn.programbbs_627;
    public class CeShi{
    public static void main(String[] args){
    String  a = "java";
    int count = 0;
    int index = -1;
    String str = "sunjavahpjavaokjavajavaandjavahahajavagoodjava";
    /*String str = "sunjavahpjavaokjavajavahahajavagoodjava";
    在字符串中多加了一个javaand就报异常,如果不加and就不会报错*/
    System.out.println(str.indexOf(a));

    while((index = str.indexOf(a))!= -1){
    str = str.substring(a.length() + str.indexOf(a));
    count++;
    System.out.print(index + " ");
    }
    System.out.println();
    System.out.println("The count: " + count);
    }
    }
      

  2.   

    能问一下,出错在什么地方吗?为什么多加一个System.out.println();就不会报错?
    自学真痛苦。
      

  3.   

    你的逻辑好像有问题,
    比如 "aaa".substring(5),肯定要报错的
    关键你想实现什么样的功能