方法一:使用indexof计算出第一次匹配的位置count++,然后将往后匹配,直到匹配不到

@Test
public void searchByIndexOf(){
    String str="abcjavadefjavadddjavc";
    String newStr="a";
    int count=0;
    int i=0;
    while(str.indexOf(newStr,i)>=0){
         count++;
         i=str.indexOf(newStr,i)+newStr.length();
    }
    System.out.println(newStr+"匹配到"+count+"次");
}

 

方法二:使用replaceAll方法将要匹配的字串转成"",将替换前的长度减去替换后的长度

@Test
    public void searchByReplaceAll(){
        String str="abcjavadefjavadddjavc";
        String newStr="a";
        int count=0;
        int i=0;
        int len1=str.length();
        String str1=str.replaceAll(newStr,"");
        int len2=str1.length();
        System.out.println(newStr+"匹配到"+(len1-len2)+"次");
    }

  

 

 

方法三: