常见对象_在大串中查找小串出现的次数案例代码实现

来源:互联网 发布:如何关闭电脑端口 编辑:程序博客网 时间:2024/05/16 13:50



package cn.itcast_07;/* * 统计大串中小串出现的次数 * 举例: * 在字符串"woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun" * 结果: * java出现了5次 *  * 分析: * 前提:已经知道大串和小串。 *  * A:定义一个统计变量,初始化值是0 * B:先获取一次"java"先在大串中查找一次小串第一次出现的位置 * a:如果索引值是-1,就说明不存在,返回统计变量 * b:如果索引值不是-1,就说明存在,统计变量++ * C:把刚才的索引+小串的长度作为起始位置截取原始大串,得到一个新的字符串,并把该字符串重新赋值给大串 * D:回到B即可 */public class StringTest4 {public static void main(String[] args) {// 创建大串String maxString = "woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun";// 定义小串String minString = "java";// 写功能实现int count = getCount(maxString, minString);System.out.println(minString + "出现了" + count + "次");}/* * 两个明确 返回值类型:int 参数列表:两个字符串 */public static int getCount(String maxString, String minString) {// 定义一个统计变量,初始化值是0int count = 0;// 先在大串中查找一次小串第一次出现的位置int index = maxString.indexOf(minString);// 4// 如果索引值是-1,就说明存在,统计变量++while (index != -1) {// 4 8 10 13 12count++;// 1 2 3 4 5// 把刚才的索引+小串的长度作为起始位置截取原始大串,得到一个新的字符串,并把该字符串重新赋值给大串int startIndext = index + minString.length();// 4+4=8 8+4=12 10+4=14// 13+4=17 12+4=16maxString = maxString.substring(startIndext);// wozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun---8// wozhendeaijavawozhendehenaijavaxinbuxinwoaijavagun---10// wozhendehenaijavaxinbuxinwoaijavagun---13// xinbuxinwoaijavagun---12// 继续查index = maxString.indexOf(minString);// 8 10 13 12}return count;}}


0 0