详解:
package Demo5;
public class Demo4 {
public static void main(String[] args) {
int count = find("0","fssad ad fdf");
System.out.println(count+"次");
}
public static int find(String s , String st ){
int count = 0;
if(st.length()>=s.length()){ //st的长度>s的长度才能进行查找,毕竟是包含关系
int i = 0;
while(i<st.length()){
int a = st.indexOf(s,i); //从指定位置开始查找,i是能变化的(跳过以前找到的数据,进行查找)
if(a==-1){ //-1说明没找到,此时已经查找完毕了
if(count==0){ //count==0,则一次也没找到,直接退出循环
break;
}else{ //count!=0 , 说明找到了count次
break;
}
}else{ //找到了
count++; //找到几次,进行增加
i = a + s.length(); //改变循环条件,继续查找
}
}
}else{
return -1; //s的长度>st的长度,不符合包含关系
}
return count; //查找完毕,返回次数
}
}