StringDemo6

package cn.zuoye;
/*
 * 统计大串中小串出现的次数
 * 举例:
 * woaijavanimenshihsuiisjavadejava
 * 结果:
 * java出现了3次
 *
 * 思路:A 定义一个统计变量,初始值为0
 *   B 先获取一次小串在大串中出现的索引,如果索引值是-1,就说明不存在,返回统计变量
 *   如果索引值不是-1,就说明存在,统计变量++
 * C 把刚才的索引+小串的长度作为起始位置截取原始大串,得到一个新的字符串,并把该字符串
 * 重新赋给大串.
 * D 回到B
 */
public class StringDemo6 {
 public static void main(String[] args) {
  // 定义大串
  String maxString = "woaijavanimenshihsuiisjavadejava";
  // 定义小串
  String minString = "java";
  //功能实现
  int count=StringDemo6.getCount(maxString, minString);
  System.out.println("出现的次数为:"+count);
  
  
  
  }
 //两个明确
 /*
  * 返回类型:int
  * 参数列表:两个字符串
  */
 public static int getCount(String maxString,String minString ){
  //A
  int Count = 0;
 /* //B
  int index=maxString.indexOf(minString);
  while(index!=-1){
   Count++;
   //把刚才的索引+小串的长度作为起始位置截取原始大串,得到一个新的字符串,并把该字符串
   // 重新赋给大串.
   int startIndex = index+minString.length();
   maxString=maxString.substring(startIndex);
   //继续查
   index=maxString.indexOf(minString);
  }
  */
  //改进版
  int index;
  //先查 ,赋值,判断
  while((index=maxString.indexOf(minString))!=-1){
   Count++;
   maxString=maxString.substring(index+minString.length());
  }
  return Count;
 }
}
posted @ 2018-11-02 09:34  阿蓉  阅读(169)  评论(0编辑  收藏  举报