Java8中的常用函数式接口及例子

Java 8中的常用函数式接口 
函数式接口 函数描述符 原始类型特化
 Predicate<T>  T->boolean IntPredicate,LongPredicate, DoublePredicate
 Consumer<T>  T->void  IntConsumer,LongConsumer, DoubleConsumer
 Function<T,R>  T->R  IntFunction,
     IntToDoubleFunction,
     IntToLongFunction,
     LongFunction, 
     LongToDoubleFunction,
     LongToIntFunction,
     DoubleFunction, 
     ToIntFunction, 
     ToDoubleFunction, 
     ToLongFunction
 Supplier<T>  ()->T  BooleanSupplier,IntSupplier, LongSupplier,
     DoubleSupplier
 UnaryOperator<T>  T->T  IntUnaryOperator,
     LongUnaryOperator,
     DoubleUnaryOperator
 BinaryOperator<T>  (T,T)->T  IntBinaryOperator,
     LongBinaryOperator,
     DoubleBinaryOperator
 BiPredicate<L,R>  (L,R)->boolean  
 BiConsumer<T,U>  (T,U)->void  ObjIntConsumer<T>,  
     ObjLongConsumer<T>,
     ObjDoubleConsumer<T>
 BiFunction<T,U,R>  (T,U)->R  ToIntBiFunction<T,U>, 
     ToLongBiFunction<T,U>, 
     ToDoubleBiFunction<T,U>

 

补充:

Lambdas及函数式接口的例子
使用案例 Lambda 的例子 对应的函数式接口
布尔表达式 (List list) -> list.isEmpty()  Predicate<list> 
创建对象 () -> new Apple(10) Supplier<Apple>
消费一个对象 (Apple a) -> System.out.println(a.getWeight()) Consumer<Apple>
从一个对象中 选择/提取 (String s) -> s.length() Function<string, integer="">或 ToIntFunction
合并两个值 (int a, int b) -> a * b IntBinaryOperator
比较两个对象 (Apple a1, Apple a2) -> a1.getWeight().compareTo(a2.getWeight()) Comparator或 BiFunction<apple, apple,="" integer=""> 或 ToIntBiFunction<apple, apple="">
posted @   少说点话  阅读(1159)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
网站运行:7年51天17时24分27秒
点击右上角即可分享
微信分享提示