查找字符串 中字串个数

来源:互联网 发布:二维码生成器软件制作 编辑:程序博客网 时间:2024/06/18 17:28
/* * 一个字串在整串中出现的次数 * nbaernbatynbauinbaopnba * 思路: * 1、要找的字串是否存在如果存在获取其出现的位置,这个可以使用indexOf完成 * 2、如果找到了,那么就记录出现的位置并在剩余的字符串中继续查找该字串, * 而剩余字符串的起始位置是出现位置+字串长度 * 3、以此类推,通过循环完成查找,如果找不到就是-1 并对每次找到用计数器记录。 */public class StringTest2 {public static int getKeyStringCount(String str, String key) { //1、定义计数器int count=0;//2、 定义变量记录key出现的位置int index=0;while((index=str.indexOf(key))!=-1) {str=str.substring(index+key.length());count++;}return count;}public static void main(String[] args) {// TODO Auto-generated method stubString str="nbaasdnbanbasdasdasdnba";String key="nba";int count=getKeyStringCount_2(str,key);System.out.println("count:"+count);}private static int getKeyStringCount_2(String str, String key) {//推荐这种// TODO Auto-generated method stubint count=0;int index=0;while((index=str.indexOf(key,index))!=-1) {//不在内存中过多产生字符串常量 index=index+key.length();//先在字符串找key 找到后 去掉前面包含key的部分 再在字串中找count++;}return count;}}

原创粉丝点击