Map统计数组的相同字符的总数
1 import java.util.HashMap; 2 import java.util.Map; 3 import java.util.Set; 4 5 /** 6 * <p> 7 * 统计数组{"字","我","字","我","你","它","他","字","它","你","她","你",} 8 * <p> 9 * 中可能出现的重复的字符串,如果有重复的字符串,把它们找出来,并把它们重复的次数也打印出来; 10 * 11 * @author entor11 12 * 13 */ 14 public class StringTest { 15 16 public static void main(String[] args) { 17 18 // 找出重复的字符串,确定次数 19 // 将字符串-次数设计成映射 20 // 如果字符串没有出现过,那么它没有次数,对应集合是null 21 // 如果字符串出现过,只需要增加字符串键K对应的值V就可以了 22 Map<String, Integer> map = new HashMap<String, Integer>(); 23 24 // 定义字符串数组 25 String[] array = { "字", "我", "字", "我", "你", "它", "他", "字", "它", "你", 26 "她", "你" }; 27 28 // 迭代数组 29 for (String key : array) { 30 // 在map中没有对应的K,但在数组中出现了 31 if (map.get(key) == null) { 32 map.put(key, 1);// 元素在数组中出现一次 33 } else {// 数组中的元素再次在map中出现 34 map.put(key, map.get(key) + 1); 35 } 36 } 37 38 // 判断出现的次数 39 // 迭代集合 40 Set<String> keyset = map.keySet(); 41 for (String key : keyset) { 42 if (map.get(key) >= 2) { 43 System.out.println("重复元素:" + key + ",出现:" + map.get(key) + "次"); 44 } 45 } 46 } 47 }