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) + "次      ");
            }
        }

    }
}

猜你喜欢

转载自www.cnblogs.com/qqqq122418812/p/11301720.html