/* * Copyright 2025 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * 函数式编程 * *

PredicateTools

*

* {@link PredicateTools} 用于 {@link java.util.function.Predicate} 的相关操作。 *

* *

Functional interfaces

*

* 补充一些 JDK 没有,而项目中可能用得上的函数式接口: *

 * | Group         | FunctionalInterface  | method                           |
 * | ------------- | -------------------- | -------------------------------- |
 * | UnaryOperator | BoolUnaryOperator    | boolean applyAsBool (boolean)    |
 * | UnaryOperator | CharUnaryOperator    | char applyAsChar(char)           |
 * | Throwing      | Executable           | void execute() throws E          |
 * | Throwing      | ThrowingConsumer     | void accept(T) throws E          |
 * | Throwing      | ThrowingFunction     | R apply(T) throws E              |
 * | Throwing      | ThrowingPredicate    | boolean test(T) throws E         |
 * | Throwing      | ThrowingSupplier     | T get() throws E                 |
 * | Optional      | OptionalSupplier     | Optional<T> get() throws E       |
 * | Optional      | ToOptionalBiFunction | Optional<R> apply(T,U)           |
 * | Optional      | ToOptionalFunction   | Optional<R> apply(T)             |
 * 
*

*/ package xyz.zhouxy.plusone.commons.function;