码迷,mamicode.com
首页 > 其他好文 > 详细

String-统计大串中小串出现的次数

时间:2015-12-23 01:56:24      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:


package cn.lianxi;

public class Count {
    /*
     * 统计大串中小串出现的次数
     * 举例:在字符串“woaijavawozhendeaijavawozhendejava”
     * 结果;
     *         java出现了5次
     * 
     * 分析:
     *         前提知道了大串和小串
     *         1.定义一个统计变量,初始化值是0;
     *         2.先在大串中查找一次小串第一次出现的位置
     *                 a.索引是-1,说明不存在了,就返回统计变量
     *                 b.索引不是-1,说明存在,统计变量++
     *         3.把刚才的索引+小串的长度作为开始位置进行截取
     *                 返回一个新的字符串,并把该字符串的值重新赋值给大串
     *        4.回到2
     * */
    public static void main(String[] args) {
        String maxString = "woaijavawozhenjavadeaijavawozhjavaendejava";
        String minString = "java";
        int count = getCount(maxString,minString);
        System.out.println("子串出现的次数是:"+count);
    }
    public static int getCount(String maxString,String minString){
        //定义一个统计变量,初始化值是0
        int count = 0;
        //先在大串中查找一次小串第一次出现的位置
        int index = maxString.indexOf(minString);
        //索引是-1,说明不存在了,就返回统计变量
        while(index != -1){
            count++;
            //把刚才的索引+小串的长度作为开始位置进行截取
            //返回一个新的字符串,并把字符串重新赋值给大串
            //int startIndex = index + minString.length();
            //maxString = maxString.substring(startIndex);
            //以上两行代码可优化为
            maxString = maxString.substring(index + minString.length());
            //继续查
            index = maxString.indexOf(minString);
        }
        return count; 
    }
}

 

 

 

String-统计大串中小串出现的次数

标签:

原文地址:http://www.cnblogs.com/Deleting/p/5068692.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!