A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

public class 大串小串做法一 {
        public static void main(String[] args) {

        String max = "woaiheima,heimabutongyubaima,buguanshiheimahaishi1baima,zhaodaogongzuojiushihaoma";
        String min = "heima";
       
        int count =        0;        //定义计数器变量
        int index =        0;        //定义索引
       
        while((index =max.indexOf(min))!=-1){
               
                count++ ; //计数器自增
                max =max.substring(index+min.length());
        }
        System.out.println(count);
}
}
public class 大串小串做法二 {
        public static void main(String[] args) {
                String maxStr = "woaiheima,heimabutongyubaima,buguanshiheimahaishi1baima,zhaodaogongzuojiushihaoma";
                String minStr = "heima";
               
                //int count = (大串的长度-新串的长度)/小串的长度
                int count = (maxStr.length()-maxStr.replace(minStr, "").length())/minStr.length();
                System.out.println(count);
        }
}

2 个回复

倒序浏览
第二个思路很好!以前没想到。
回复 使用道具 举报
  1. import java.util.regex.Matcher;
  2. import java.util.regex.Pattern;

  3. public class Test {
  4.         public static void main(String[] args) {
  5.                 Pattern p = Pattern.compile("heima");
  6.                 Matcher m = p.matcher("woaiheima,heimabutongyubaima,buguanshiheimahaishi1baima,zhaodaogongzuojiushihaoma");
  7.                 int count = 0;
  8.                 while(m.find()){
  9.                         count++;
  10.                 }
  11.                 System.out.println(count);
  12.         }
  13. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马