Java8的四大核心函数式接口
来源:互联网 发布:ubantu查看设备端口 编辑:程序博客网 时间:2024/06/16 01:41
前言
在学习一段时间后会不会有这样的疑问—难道我要用Lambda表达式的时候总要自己写函数式接口吗?
当然不是这样了,Java8里面提供了四大核心的函数式供我们使用!
四大核心函数式接口
测试代码
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
输出结果
- 1
- 2
- 3
- 4
- 1
- 2
- 3
- 4
拓展函数式接口
如果你觉得这几个还是不够用,那么可以参考下面的一些拓展的接口,其用法与上面大同小异:
代表了一个接受两个输入参数的操作,并且不返回任何结果
2BiFunction<T,U,R>代表了一个接受两个输入参数的方法,并且返回一个结果
3BinaryOperator<T>代表了一个作用于于两个同类型操作符的操作,并且返回了操作符同类型的结果
4BiPredicate<T,U>代表了一个两个参数的boolean值方法
5BooleanSupplier代表了boolean值结果的提供方
6Consumer<T>代表了接受一个输入参数并且无返回的操作
7DoubleBinaryOperator代表了作用于两个double值操作符的操作,并且返回了一个double值的结果。
8DoubleConsumer代表一个接受double值参数的操作,并且不返回结果。
9DoubleFunction<R>代表接受一个double值参数的方法,并且返回结果
10DoublePredicate代表一个拥有double值参数的boolean值方法
11DoubleSupplier代表一个double值结构的提供方
12DoubleToIntFunction接受一个double类型输入,返回一个int类型结果。
13DoubleToLongFunction接受一个double类型输入,返回一个long类型结果
14DoubleUnaryOperator接受一个参数同为类型double,返回值类型也为double 。
15Function<T,R>接受一个输入参数,返回一个结果。
16IntBinaryOperator接受两个参数同为类型int,返回值类型也为int 。
17IntConsumer接受一个int类型的输入参数,无返回值 。
18IntFunction<R>接受一个int类型输入参数,返回一个结果 。
19IntPredicate:接受一个int输入参数,返回一个布尔值的结果。
20IntSupplier无参数,返回一个int类型结果。
21IntToDoubleFunction接受一个int类型输入,返回一个double类型结果 。
22IntToLongFunction接受一个int类型输入,返回一个long类型结果。
23IntUnaryOperator接受一个参数同为类型int,返回值类型也为int 。
24LongBinaryOperator接受两个参数同为类型long,返回值类型也为long。
25LongConsumer接受一个long类型的输入参数,无返回值。
26LongFunction<R>接受一个long类型输入参数,返回一个结果。
27LongPredicateR接受一个long输入参数,返回一个布尔值类型结果。
28LongSupplier无参数,返回一个结果long类型的值。
29LongToDoubleFunction接受一个long类型输入,返回一个double类型结果。
30LongToIntFunction接受一个long类型输入,返回一个int类型结果。
31LongUnaryOperator接受一个参数同为类型long,返回值类型也为long。
32ObjDoubleConsumer<T>接受一个object类型和一个double类型的输入参数,无返回值。
33ObjIntConsumer<T>接受一个object类型和一个int类型的输入参数,无返回值。
34ObjLongConsumer<T>接受一个object类型和一个long类型的输入参数,无返回值。
35Predicate<T>接受一个输入参数,返回一个布尔值结果。
36Supplier<T>无参数,返回一个结果。
37ToDoubleBiFunction<T,U>接受两个输入参数,返回一个double类型结果
38ToDoubleFunction<T>接受一个输入参数,返回一个double类型结果
39ToIntBiFunction<T,U>接受两个输入参数,返回一个int类型结果。
40ToIntFunction<T>接受一个输入参数,返回一个int类型结果。
41ToLongBiFunction<T,U>接受两个输入参数,返回一个long类型结果。
42ToLongFunction<T>接受一个输入参数,返回一个long类型结果。
43UnaryOperator<T>接受一个参数为类型T,返回值类型也为T。
- Java8的四大核心函数式接口
- Java8的四大核心函数式接口
- Java8中内置的四大核心函数式接口
- Java8新特性_四大内置核心函数式接口
- Java8新特性(内置的核心函数式接口)
- java8 四个核心函数式接口
- JDK8-四大核心函数式接口(三)
- 四大内置核心函数式接口
- Java8:函数式接口
- 第二十三讲 JDK8的foreach与Consumer接口、四大核心函数式接口、Stream接口、队列与栈
- java8提供的简单函数式接口
- Java8自定义带泛型的函数式接口
- java8的内置函数式接口总结
- 开始Java8之旅(四) --四大函数接口
- java8内置四大函数
- java8内置函数式接口
- JAVA8 函数式接口介绍
- Java8内置函数式接口
- typedef用法总结
- MSSQL_2017年4月最新全国手机号段手机归属地数据库360000条记录
- SPFA算法详解
- Linux学习笔记——20170803
- ng-vue-anvalon区别
- Java8的四大核心函数式接口
- Maven-使用阿里云的镜像
- Apache基本配置-2
- 两台window系统电脑用一根网线传输数据
- python入门系列5:字符串
- SPFA单源最短路算法—vector模拟邻接表实现
- 排序算法目录
- python入门系列6:list(列表)
- 最短路算法详解(Dijkstra/SPFA/Floyd)