/*
* 查找指定字符串中 给定字符串 出现的次数
* 例如 朋友你好,我是张三的好朋友,今晚他的朋友们一起去我的朋友李四加吃完饭。
* 在上句话中查找 朋友 出现的次数
*
* indexOf("朋友");
*
* 查找指定字符串中 给定字符串 出现的次数
* 例如 朋友你好,我是张三的好朋友,今晚他的朋友们一起去我的朋友李四加吃完饭。
* 在上句话中查找 朋友 出现的次数
*
* indexOf("朋友");
*
* */
具体实现如下
public class SearchString {
public static int searchString(String strsrc,String str){
//这里第一个参数表示原始字符串 第二个参数表示要查找的字符串
int count=0;//计数器
int index=0;//找到朋友的下标
index=strsrc.indexOf(str);
//找到就返回首次出现的下标,找不到就返回-1
while(index!=-1){
count++;//计数器加1
index+=str.length();//每找到一次返回下标
/*这里需要注意的细节是length是字符串的方法,是数组的属性。所以求字符串长度应该是.length(),而不是.length
*
* 这里就是说 第一次朋友找到了 count加1之后 继续接着找,
* 这个时候就从“你” 开始找了 第二次找到之后 就从“,"开始找了
* 找到之后 又从“们”开始找.....
* indexOf两个参数 一个是要找的字符串,一个是从哪个下标开始找
* */
index=strsrc.indexOf(str,index);//指定从哪个位置的下标往后找
}
System.out.println("您要找的字符串出现了"+count+"次!");
return count;
}
public static void main(String[] args) {
String strsrc="朋友你好,我是张三的好朋友,今晚他的朋友们一起去我的朋友李四加吃完饭。";
String str="朋友";
searchString(strsrc,str);
}
}