比如String a="acacacwerwac";
   String b="ac";
显示四 

解决方案 »

  1.   

    System.out.println(a.split(b).length);
      

  2.   

    不好意思 后来发现用split貌似不行
    这样 while (a.contains(b)) {
    a = a.replaceFirst("ac", "");
    count++;
    } System.out.println(count);
      

  3.   


    int count = 0;
    while (a.contains(b)) {
    a = a.replaceFirst(b, "");
    count++;
    } System.out.println(count);
      

  4.   


    String a = "acacacwerwac";
    String b = "ac";
    int i = 0;

    Pattern p = Pattern.compile(b);
    Matcher m = p.matcher(a);

    while(m.find()){
         i++;
    }
    System.out.println(i);
      

  5.   

    public class Test {    public static void main(String[] args) {
            String a = "acacacwerwac";
            String b = "ac";
            int count = count(a, b);
            System.out.println(count);
        }
        
        private static int count(String src, String find) {
            int count = 0;
            int index = src.indexOf(find); 
            while(index > -1) {
                count++;
                index = src.indexOf(find, index + 1);
            }
            return count;
        }
    }
      

  6.   

    改一下哈private static int count(String src, String find) {
        int count = 0;
        int index = src.indexOf(find);
        int len = find.length();
        while(index > -1) {
            count++;
            index = src.indexOf(find, index + len);
        }
        return count;
    }