从List<Map>中截取指定的范围数据集合

package com.sport.sportsfinetrackadminserver.common.utils;
import com.google.common.collect.Lists;
import org.springframework.util.CollectionUtils;

import java.util.List;
import java.util.Map;

/**
 * @author zdj
 * @version 1.0
 * @date 2022/06/21 10:02
 */
public class CollectUtils {
    
    

    /**
     * 截取指定集合中的元素
     * @param list 需要处理的集合
     * @param interceptFactor 截取因子
     * @return
     */
    public static List<Map<String, Object>> truncateCollectByFactor(List<Map<String, Object>> list, int interceptFactor) {
    
    
        List<Map<String, Object>> resultList = Lists.newArrayList();
        if(CollectionUtils.isEmpty(list)){
    
    
            return resultList;
        }
        if(interceptFactor >= list.size() || interceptFactor <= 0){
    
    
            return list;
        }
        if(interceptFactor < list.size()){
    
    
            return list.subList(0, interceptFactor);
        }
        return resultList;
    }
}

使用:

// 取前10名
                List<Map<String, Object>> resultList1 = CollectUtils.truncateCollectByFactor(resultList, 10);

猜你喜欢

转载自blog.csdn.net/gelinwangzi_juge/article/details/124989811