java的function用法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

java的function用法
Java中的Function用法
Java中的Function是一个函数式接口,它接受一个参数并返回一个结果。

Function接口是Java 8中的一个新特性,它可以用于将一个函数作为参数传递给另一个函数,或者将一个函数作为返回值返回。

Function接口有一个apply()方法,它接受一个参数并返回一个结果。

apply()方法的参数类型和返回值类型可以是任意类型,这使得Function接口非常灵活。

下面是一个简单的例子,演示了如何使用Function接口:
```
Function<Integer, String> convert = x -> String.valueOf(x);
System.out.println(convert.apply(3)); // 输出 "3"
```
在这个例子中,我们创建了一个Function对象,它将一个整数转换为字符串。

我们使用apply()方法将整数3传递给Function对象,并打印出结果。

除了apply()方法之外,Function接口还有其他几个方法,如compose()、andThen()和identity()。

compose()方法接受一个Function对象作为参数,并返回一个新的Function对象,它将当前Function对象的结果作为参数传递给传入的Function对象。

例如:
```
Function<Integer, Integer> add = x -> x + 1;
Function<Integer, Integer> multiply = x -> x * 2;
Function<Integer, Integer> addThenMultiply = pose(add);
System.out.println(addThenMultiply.apply(3)); // 输出 "8"
```
在这个例子中,我们创建了两个Function对象,一个将整数加1,另一个将整数乘以2。

我们使用compose()方法将它们组合成一个新的Function对象,它将整数加1,然后将结果乘以2。

andThen()方法与compose()方法类似,但是它先执行当前Function对象,然后将结果作为参数传递给传入的Function对象。

例如:
```
Function<Integer, Integer> add = x -> x + 1;
Function<Integer, Integer> multiply = x -> x * 2;
Function<Integer, Integer> addAndMultiply = add.andThen(multiply);
System.out.println(addAndMultiply.apply(3)); // 输出 "8"
```
在这个例子中,我们创建了两个Function对象,一个将整数加1,另一个将整数乘以2。

我们使用andThen()方法将它们组合成一个新的Function对象,它将整数加1,然后将结果乘以2。

identity()方法返回一个Function对象,它返回传入的参数。

例如:
```
Function<Integer, Integer> identity = Function.identity();
System.out.println(identity.apply(3)); // 输出 "3"
```
在这个例子中,我们创建了一个identity()方法,它返回传入的参数。

我们使用apply()方法将整数3传递给Function对象,并打印出结果。

总结
Java中的Function接口是一个非常有用的特性,它可以用于将一个函数作为参数传递给另一个函数,或者将一个函数作为返回值返
回。

Function接口有一个apply()方法,它接受一个参数并返回一个结果。

除了apply()方法之外,Function接口还有其他几个方法,如compose()、andThen()和identity()。

这些方法可以用于组合多个Function对象,以实现更复杂的功能。

相关文档
最新文档