Java 8引入java.util.function包中的函数式接口支持Lambda表达式,1. Supplier无参有返回值;2. Consumer接收参数无返回值;3. Predicate接收参数返回boolean;4. Function输入输出类型可不同;5. UnaryOperator继承Function,输入输出类型相同;6. BinaryOperator处理两个同类型参数并返回同类型结果;7. BiFunction接收两个不同类型参数返回结果;8. BiConsumer接收两个参数无返回值;9. BiPredicate接收两个参数返回boolean;10. 提供IntSupplier、LongConsumer等基本类型专用接口避免装箱开销。掌握这些接口可高效使用Lambda与Stream API。

Java 8 引入了函数式接口来支持 Lambda 表达式,这些接口都位于 java.util.function 包中。它们是 Java 内置的核心函数式接口,适用于大多数常见的编程场景。
1. Supplier
表示一个无参数、有返回值的函数。常用于提供或生成某个值。
- 函数方法:T get()- 示例:Supplier
2. Consumer
接收一个参数,不返回结果。通常用于执行某些操作,如打印或修改对象。
- 函数方法:void accept(T t)- 示例:Consumer
3. Predicate
接收一个参数,返回 boolean 值,常用于条件判断。
立即学习“Java免费学习笔记(深入)”;
- 函数方法:boolean test(T t)- 示例:Predicate
4. Function
接收一个输入参数,返回一个结果,常用于类型转换或数据映射。
- 函数方法:R apply(T t)- 示例:Function
5. UnaryOperator
是 Function 的子接口,输入和输出类型相同。
聚彩手机商城系统,是一款专业于手机销售的独立手机网店系统,他拥有众多的手机参数选项,以及傻瓜式的设置选项,让您可以在5分钟内建立起专业而强大的手机销售网站。他拥有多套模版可以实时切换,前台拥有新闻中心、手机中心、配件中心、软件下载、手机报价、发货查询、保修查询、分店查询、产品的对比功能,代理与加盟的申请等功能,他拥有完善的会员中心,会员等级设置等,集成在线支付接口,超强SEO,可以设置所有页面的t
6. BinaryOperator
接收两个相同类型的参数,返回相同类型的结果,用于二元运算。
- 示例:BinaryOperator7. BiFunction
接收两个不同类型的参数,返回一个结果。
- 函数方法:R apply(T t, U u)- 示例:BiFunction
8. BiConsumer
接收两个参数,不返回结果。
- 示例:BiConsumer9. BiPredicate
接收两个参数,返回 boolean。
- 示例:BiPredicate10. 其他常用变体
为基本类型优化的接口,避免自动装箱:
- IntSupplier, LongConsumer, DoublePredicate 等- ToIntFunction, DoubleToIntFunction 等
基本上就这些。掌握这几个核心接口,就能在日常开发中灵活使用 Lambda 和 Stream API。










