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;
}
}
集合去重、内存中排序的工具类
最新推荐文章于 2022-03-29 15:57:49 发布