文档章节

CollectionUtil

A-I-O
 A-I-O
发布于 2017/03/20 20:42
字数 166
阅读 4
收藏 0
import java.util.*;

public class CollectionUtil {

    /**
     * 对List进行分页处理
     * @param list 需要分页的List
     * @param pageSize 单页条数
     * @param pageNum 页码
     */
    public static <T> List<T> pageList(List<T> list, int pageSize, int pageNum) {
        if (list == null || list.isEmpty()) {
            return list;
        }
        int offset = (pageNum - 1) * pageSize;
        int size = Math.min(pageNum * pageSize, list.size());
        if (offset > size) {
            return Collections.emptyList();
        }
        return list.subList(offset, size);
    }

    /**
     * 匹配Map中是否存在key,忽略大小写
     * @param map 要遍历的Map
     * @param key 要匹配的Key
     * @return 命中Map中的Key
     */
    public static String matchKeyIgnoreCase(Map<String, ?> map, String key) {
        if (map == null || map.isEmpty() || key == null) {
            return null;
        }
        for (String mapKey : map.keySet()) {
            if (mapKey.equalsIgnoreCase(key)) {
                return mapKey;
            }
        }
        return null;
    }

    /**
     * 对List元素去重
     */
    public static <T> List<T> uniqueList(List<T> list) {
        if (list == null || list.isEmpty()) {
            return list;
        }
        Set<T> set = new HashSet<>(list);
        list.clear();
        list.addAll(set);
        return list;
    }

}

© 著作权归作者所有

下一篇: SqlBuilder
A-I-O
粉丝 1
博文 17
码字总数 4671
作品 0
杭州
其他
私信 提问
feilong-core 1.11.0 发布,让 Java 开发更简便的工具包

feilong-core 1.11.0 发布,让 Java 开发更简便的工具包 本次发布的核心内容 : `CollectionUtil` 添加删除 null 元素的功能 重构 DatePattern [Feature] :new: #731 新增 `ReturnResultBui...

飞天奔月
2018/04/11
595
0
Hutool 2.16.0 发布,Java 工具集

Hutool 2.16.0 发布了。Hutool 是一个Java工具包,提供了丰富的文件、日期、日志、正则、字符串、配置文件等工具方法,并封装了一套简单易用的ORM框架。 新特性 Conver类变为Convert类 增加H...

路小磊
2016/12/30
2.2K
20
Hutool 3.1.1 跨越发布,Java 工具集

Hutool 是一个Java工具包,提供了丰富的文件、日期、日志、正则、字符串、配置文件等工具方法,并封装了一套简单易用的ORM框架。 主页:http://hutool.cn/ 文档:http://hutool.mydoc.io/ (...

路小磊
2017/09/13
1K
40
Hutool 2.15.15 发布,Java 工具集

Hutool 2.15.8 发布了。Hutool 是一个Java工具包,提供了丰富的文件、日期、日志、正则、字符串、配置文件等工具方法,并封装了一套简单易用的ORM框架。 ----------------------- 1024 -----...

路小磊
2016/10/24
2.4K
11
Hutool之集合工具——CollectionUtil

集合工具 这个工具主要增加了对数组、集合类的操作。 1. 方法 将集合转换为字符串,这个方法还是挺常用,是的反方法。这个方法的参数支持各种类型对象的集合,最后连接每个对象时候调用其方法...

路小磊
2014/05/09
3K
0

没有更多内容

加载失败,请刷新页面

加载更多

sync 包讲解

sync.Once Once 的作用是多次调用但只执行一次,Once 只有一个方法,Once.Do(),向 Do 传入一个函数,这个函数在第一次执行 Once.Do() 的时候会被调用,以后再执行 Once.Do() 将没有任何动作...

李琼涛
29分钟前
4
0
java中的byte占一字节或4字节

https://www.jianshu.com/p/2f663dc820d0

南桥北木
43分钟前
5
0
Cassandra 常用命令

Linux控制台命令 #进入Cassandra的安装目录 cd /home/db/cassandra/cassandra #进入Cassandra 无密码 ./bin/cqlsh localhost(IP)有密码 ./bin/cqlsh localhost(IP)-u 用户名 #显示所...

最菜最菜之小菜鸟
48分钟前
6
0
自建redis笔记

自建redis笔记 最近在linux安装了一下redis,特做一些笔记! 本文先单节点启动redis,然后再进行持久化配置,在次基础上,再分享搭建主从模式的配置以及Sentinel 哨兵模式及集群的搭建 单节点...

北极之北
56分钟前
5
0
扛住阿里双十一高并发流量,Sentinel是怎么做到的?

Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景 本文介绍阿里开源限流熔断方案Sentinel功能、原理、架构、快速入门以及相关框架比较 基本介绍 1 名词解释 服务限流 :当系统资源...

分布式系统架构
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部