2021-07-03 Java语言高级(二)5
2021/7/3 20:52:40
本文主要是介绍2021-07-03 Java语言高级(二)5,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
目录
一、函数式接口
二、函数式编程
三、常用的函数式接口
一、函数式接口
函数式接口:有且仅有一个抽象方法的接口,接口中可以包含(默认,静态,私有)。
@FunctionalInterface注解 作用:可以检测接口是否是一个函数式接口。
二、函数式编程
使用Lambda优化日志
使用Lambda作为参数和返回值
三、常用的函数式接口
java.util.function.Supplier<T>接口仅包含一个无参的方法: T get()。用来获取一个泛型参数指定类型的对象数据。 Supplier<T>接口被称之为生产型接口。
java.util.function.Consumer<T>接口 Consumer接口中包含抽象方法void accept(T t),意为消费一个指定泛型的数据。
Consumer接口的默认方法andThen 作用:需要两个Consumer接口,可以把两个Consumer接口组合到一起,再对数据进行消费。 例:
//Consumer<String> con1 //Consumer<String> con2 String s = "hello"; con1.accept; con2.accept; //连接两个Consumer接口 再进行消费 con1.andThen(con2).accept(s);//写前面先消费
java.util.function.Predicate<T>接口 作用:对某个数据类型的数据进行判断,结果返回一个boolean值
Predicate接口中包含一个抽象方法: boolean test(T t):用来对指定数据类型数据进行判断的方法。
Predicate接口中有一个方法and(or),表示并且的关系,也可以用于连接两个判断条件。
default Predicate<T> and(Predicate<? super T> other){ Objects.requireNonNull(other); return (t) -> this.test(t) && other.test(t); }
Predicate接口中有一个方法negate,表示取反的意思。
default Predicate<T> negate(){ return(t) -> !test(t); }
java.util.function.Function<T, R>接口:用来根据一个类型的数据得到另一个类型的数据。 前者为前置条件,后者为后置条件。 Function接口中最主要的抽象方法为:R apply(T t),根据T的参数获取类型R的结果。 例:将String类型转换为Integer类型。
Function接口中的默认方法andThen:用来进行组合操作
这篇关于2021-07-03 Java语言高级(二)5的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)