0
点赞
收藏
分享

微信扫一扫

JAVA 从list集合中取出N(多)个不重复的元素

岛上码农 2022-01-12 阅读 70
    /**
     * 从集合中随机取出N个不重复的元素
     *
     * @param list 需要被取出数据的集合
     * @param n    取出的元素数量
     * @return
     */
    private List<JwCompany> createRandoms(List<JwCompany> list, int n) {
        Map<Integer, String> map = new HashMap();
        List<JwCompany> news = new ArrayList();
        if (list.size() <= n) {
            return list;
        } else {
            while (map.size() < n) {
                int random = (int) (Math.random() * list.size());
                if (!map.containsKey(random)) {
                    map.put(random, "");
                    news.add(list.get(random));
                }
            }
            return news;
        }
    }
举报

相关推荐

0 条评论