集合去重、内存中排序的工具类



import org.springframework.data.domain.Page;
import org.springframework.data.domain.PageImpl;
import org.springframework.data.domain.Pageable;

import java.util.*;

/**
 * Created by leixingbang on 2018/3/21.
 * 
 * 对集合进行操作的工具
 */
public class CollectionUtil<E> {
    /**
     * 对多个集合求并集,且去重
     *
     * @param args
     * @return
     */
    public List<E> getConvergence(List<E>... args) {
        Set<E> set = new HashSet<E>();
        for (List<E> arg : args) {
            set.addAll(arg);
        }
        List<E> convergenceLst = new ArrayList<>();
        convergenceLst.addAll(set);
        return convergenceLst;
    }

    /**
     * 在内存中对链表进行分页
     *
     * @param lst
     * @param pageable
     * @return
     */
    public Page getPageableList(List<E> lst, Pageable pageable) {
        int start = pageable.getOffset();
        int end = (start + pageable.getPageSize()) > lst.size() ? lst.size() : (start + pageable.getPageSize());
        Page<E> pages = new PageImpl<E>(lst.subList(start, end), pageable, lst.size());
        return pages;
    }

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值