Java面试题之计算字符/字符串出现的次数

一、计算字符在给定字符串中出现的次数

二、计算字符串在给定字符串中出现的次数

 1 import java.util.HashMap;
 2 import java.util.Map;
 3 
 4 public class Demo {
 5     public static void main(String[] args) {
 6         String str = "abcabdabc";
 7         //计算给定字符串中每个字符出现的次数
 8         findCharCount(str);
 9         //计算给定字符串在 目标字符串中的次数
10         findCount(str, "ab");
11     }
12     //计算给定字符串中每个字符出现的次数
13     public static void findCharCount(String str) {
14         Map<Character,Integer> map = new HashMap<>();
15         for(int i=0;i<str.length();i++) {
16             char ch = str.charAt(i);
17             //判断map容器中是否包含key
18             if(map.containsKey(ch)) {
19                 //如果集合中已经存在
20                 Integer count = map.get(ch);
21                 count += 1;
22                 //重新存入
23                 map.put(ch, count);
24             }else {
25                 map.put(ch,1);
26             }
27         }
28         for (Character key : map.keySet()) {
29             Integer value = map.get(key);
30             System.out.println(key+" 出现了 "+value+" 次");
31         }
32     }
33     //计算字符串在给定字符串出现的次数
34     public static void findCount(String src,String des) {
35         int index = 0;
36         int count = 0;
37         while((index = src.indexOf(des, index)) != -1) {
38             count++;
39             index = index + des.length();
40         }
41         System.out.println(des+"出现了 "+count+" 次");
42     }
43 }

 

posted @ 2018-03-19 17:34  cat_fish  阅读(13092)  评论(0编辑  收藏  举报