List集合 查询重复数据,查询重复次数
package com.cfam.controller; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Random; /** * <p> * Title: ListToRepeat.java</p> * <p> * Description: list集合查询复数据,查询重复次数</p> * * @author ken chen * @date 2019年8月5日 * @version 1.0 */ public class ListToRepeat { public static void main(String[] args) { List<String> lists = new ArrayList<String>(); for (int i = 0; i < 10; i++) { // 添加随机数 lists.add(String.valueOf(new Random().nextInt(8))); } // 创建Map集合 Map<String, Integer> map = new HashMap<String, Integer>(); for (String list : lists) { // 创建计数器 重复加一 Integer i = 1; // 如果map集合取到添加的值 list取到的值赋值给mapkey mapvalue计数器+1; if (map.get(list) != null) { // 计数器加一 i = map.get(list) + 1; } // map更新重复value 加1 如果不重复赋值给map map.put(list, i); } // value 值为list 集合出现的次数 System.out.println("map 中数据为" + map.toString()); // 遍历map 集合 for (String s : map.keySet()) { // 查询value 出现的次数 if (map.get(s) > 1) { // 打印计数器出现1次以上的数据 System.out.print(s + " " + "出现次数" + map.get(s) + "次 "); } } } }