class SchTest{
SchTest(){}
SchTest(String str,char ch){
int count=0;
System.out.print("\""+ch+"\""+"出现的位置分别为:");
for(int i=0;i!=-1;){
//indexOf()方法,如果找到就返回第一次找到的位置,如果找不到就返回-1
i=str.indexOf(ch,i+1);
if(i!=-1){
count++;
System.out.print(i+" ");
}
}
if(count>0)
System.out.println("\n"+ch+"共出现了"+count+"次");
else
System.out.println("没有在您输入的字符串中找到字符"+ch);
}
public static void main(String args[]){
SchTest st=new SchTest("abcdabcd",'a');
}
}
结果:
"a"出现的位置分别为:4
a共出现了1次
问题:如果要查找的字符脚标为0的话就找不到?
SchTest(){}
SchTest(String str,char ch){
int count=0;
System.out.print("\""+ch+"\""+"出现的位置分别为:");
for(int i=0;i!=-1;){
//indexOf()方法,如果找到就返回第一次找到的位置,如果找不到就返回-1
i=str.indexOf(ch,i+1);
if(i!=-1){
count++;
System.out.print(i+" ");
}
}
if(count>0)
System.out.println("\n"+ch+"共出现了"+count+"次");
else
System.out.println("没有在您输入的字符串中找到字符"+ch);
}
public static void main(String args[]){
SchTest st=new SchTest("abcdabcd",'a');
}
}
结果:
"a"出现的位置分别为:4
a共出现了1次
问题:如果要查找的字符脚标为0的话就找不到?
i=str.indexOf(ch,i+1); 你修改一下这句话,我想就能解决了,
SchTest(){}
SchTest(String str,char ch){
int count=0;
System.out.print("\""+ch+"\""+"出现的位置分别为:");
for(int i=0;i!=-1;){
//indexOf()方法,如果找到就返回第一次找到的位置,如果找不到就返回-1
int j = 0;
j = str.indexOf(ch, i + j);
i = j;
if(i!=-1){
count++;
System.out.print(i+" ");
i++;
}
}
if(count>0)
System.out.println("\n"+ch+"共出现了"+count+"次");
else
System.out.println("没有在您输入的字符串中找到字符"+ch);
}
public static void main(String args[]){
SchTest st=new SchTest("abcdabcda",'a');
}
}