Java list 随机取数据

作用:从list中随机取出n条数据

 

用法

List<HomeMemberDTO> memberListByiDs = memberService.getMemberListByiDs(arrayList);
//随机取n条数据
map.put("exclusiveListT",ListUtils.getRandomList(memberListByiDs,2));

 

工具类

package com.home.app.common.utils;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

/**
 * list 工具类
 */
public class ListUtils {

    /**
    * @Description list 随机取数据
    * @params     list    list集合
    *           num     随机取多少条
    **/
    public static List getRandomList(List list, int num) {
        List olist = new ArrayList<>();
        if (list.size() <= num) {
            return list;
        } else {
            Random random = new Random();
            for (int i = 0 ;i<num;i++){
                int intRandom = random.nextInt(list.size() - 1);
                olist.add(list.get(intRandom));
                list.remove(list.get(intRandom));
            }
            return olist;
        }
    }
}

 

posted @ 2020-10-15 09:57  雁书几封  阅读(5109)  评论(0编辑  收藏  举报