public class CollectionSearch<T> extends Object
Modifier and Type | Class and Description |
---|---|
static class |
CollectionSearch.Operate |
Constructor and Description |
---|
CollectionSearch(Collection<T> collection)
构造函数
|
Modifier and Type | Method and Description |
---|---|
CollectionSearch |
addCondition(Predicate<T> predicate)
增加一个筛选条件
|
CollectionSearch |
addCondition(String field,
CollectionSearch.Operate operate,
Object value)
增加一个筛选条件
|
CollectionSearch |
addCondition(String field,
CollectionSearch.Operate operate,
Object value,
boolean valNotNull)
增加一个筛选条件
|
CollectionSearch |
addCondition(String field,
Object value) |
CollectionSearch |
addCondition(String field,
Object value,
boolean valNotNull)
增加一个筛选条件
|
long |
count()
获取筛选数据的数量
|
<R> List<R> |
fields(String... fieldFilters)
筛选数据
|
<R> List<R> |
flatMap(Function<T,R> function)
筛选数据,并扁平化操作
|
boolean |
isParallelStream()
设置是否并行处理
|
CollectionSearch |
limit(int limit)
限制集合的记录数
|
<R> List<R> |
map(Function<T,R> function)
筛选数据
|
static <P> CollectionSearch<P> |
newInstance(Collection<P> collection)
静态构造方法
|
CollectionSearch |
page(int pageNum,
int pageSize)
将筛选出的数据分页
|
Collection<T> |
search()
筛选数据
|
CollectionSearch |
setParallelStream(boolean parallelStream)
设置是否并行处理
|
CollectionSearch |
sort(Comparator<T> comparator)
将筛选出的数据排序
|
CollectionSearch |
sort(String sortField)
将筛选出的数据排序
|
CollectionSearch |
sort(String sortField,
boolean isAsc)
将筛选出的数据排序
|
Stream |
streamRun() |
public CollectionSearch(Collection<T> collection)
collection
- 将被用于筛选 Collection 对象public static <P> CollectionSearch<P> newInstance(Collection<P> collection)
P
- 集合元素的范型collection
- 将被用于筛选 Collection 对象public boolean isParallelStream()
public CollectionSearch setParallelStream(boolean parallelStream)
parallelStream
- true:并行处理, false: 单线程处理public CollectionSearch addCondition(String field, Object value)
public CollectionSearch addCondition(String field, Object value, boolean valNotNull)
field
- 被筛选字段value
- 筛选的值valNotNull
- true: value==null 时不添加此条件, false: 无论如何添加此条件public CollectionSearch addCondition(String field, CollectionSearch.Operate operate, Object value)
field
- 被筛选字段operate
- 操作符美居value
- 筛选的值public CollectionSearch addCondition(String field, CollectionSearch.Operate operate, Object value, boolean valNotNull)
field
- 被筛选字段operate
- 操作符美居value
- 筛选的值valNotNull
- true: value==null 时不添加此条件, false: 无论如何添加此条件public CollectionSearch addCondition(Predicate<T> predicate)
predicate
- 筛选函数public CollectionSearch sort(String sortField, boolean isAsc)
sortField
- 排序字段isAsc
- 排序方式: false: 从大到小, true: 从小到大public CollectionSearch sort(String sortField)
sortField
- 排序字段public CollectionSearch sort(Comparator<T> comparator)
comparator
- 排序函数public CollectionSearch limit(int limit)
limit
- 记录数public CollectionSearch page(int pageNum, int pageSize)
pageNum
- 页面pageSize
- 页面数据量public Stream streamRun()
public Collection<T> search()
public <R> List<R> fields(String... fieldFilters)
R
- 范型类型fieldFilters
- 字段集合public <R> List<R> map(Function<T,R> function)
R
- 范型类型function
- map 的业务函数 function 对象public <R> List<R> flatMap(Function<T,R> function)
R
- 范型类型function
- flatMap 的业务函数 function 对象public long count()
Copyright © 2020 Voovan. All rights reserved.