| | |
| | | |
| | | import java.util.*; |
| | | import java.util.function.BiFunction; |
| | | import java.util.function.Consumer; |
| | | import java.util.function.Function; |
| | | import java.util.function.Predicate; |
| | | import java.util.stream.Collectors; |
| | |
| | | } |
| | | |
| | | /** |
| | | * 找到流中满足条件的第一个元素 |
| | | * |
| | | * @param collection 需要查询的集合 |
| | | * @param function 过滤方法 |
| | | * @return 找到符合条件的第一个元素,没有则返回null |
| | | */ |
| | | public static <E> E findFirst(Collection<E> collection, Predicate<E> function) { |
| | | if (CollUtil.isEmpty(collection)) { |
| | | return null; |
| | | } |
| | | return collection.stream().filter(function).findFirst().orElse(null); |
| | | } |
| | | |
| | | /** |
| | | * 找到流中任意一个满足条件的元素 |
| | | * |
| | | * @param collection 需要查询的集合 |
| | | * @param function 过滤方法 |
| | | * @return 找到符合条件的任意一个元素,没有则返回null |
| | | */ |
| | | public static <E> Optional<E> findAny(Collection<E> collection, Predicate<E> function) { |
| | | if (CollUtil.isEmpty(collection)) { |
| | | return Optional.empty(); |
| | | } |
| | | return collection.stream().filter(function).findAny(); |
| | | } |
| | | |
| | | /** |
| | | * 将collection拼接 |
| | | * |
| | | * @param collection 需要转化的集合 |