lambda表达式
来源:互联网 发布:淘宝哪里可以回收手机 编辑:程序博客网 时间:2024/06/07 23:39
import org.junit.jupiter.api.Test;/*Java8新特性之lambda表达式基础语法:-> 该操作符被称作箭头操作符或lambda操作符,分为左边跟有右边两大块左大块:lambda表达式的参数列表右大块:lambda表达式中所需执行的功能,即lambda体*///对一个数,进行任何运算之后返回public class test { public Integer operation(Integer num1,LambdaTest num2) { return num2.anyCalculate(num1); } //@Test public void test1() { System.out.println(operation(100,(x) -> x * x));//可以在这里进行任何运算 //因为此函数式接口只有一个参数,一条lambda语句,所以可以省掉参数x的小括号,以及返回值 //System.out.println(operation(100,x -> x*x)); }//对两个数,进行任何运算之后返回 public Integer operation2(Integer x,Integer y,LambdaTest2 num) { return num.anyCalculate2(x,y); } @Test public void test2() { //当函数式接口中的方法参数有多个,并且有返回值,并且有多句Lambda语句时,需要用中括号 System.out.println(operation2(100,100,(x,y) -> { System.out.println("多个语句要用中括号,并且需要加上return"); return x + y;//可以在这里进行任何运算 })); }}
//下面是上面所用到的自定义的函数式接口
@FunctionalInterface/*申明是函数式接口(接口中只有一个方法),申明之后,如果写了两个方法,就会报错*/public interface LambdaTest { public Integer anyCalculate(Integer num);}interface LambdaTest2{ public Integer anyCalculate2(Integer x,Integer y);}
//源码地址:https://github.com/xxhhxx/Java8/tree/2017.12.6/src(其中还写了一点关于stream API的简单用法)
阅读全文
0 0
- Lambda Expressions(Lambda表达式)
- Lambda表达式
- Lambda表达式
- Lambda 表达式
- Lambda表达式
- lambda表达式
- lambda表达式
- Lambda表达式
- Lambda表达式
- Lambda表达式
- Lambda表达式
- Lambda 表达式
- Lambda表达式
- Lambda 表达式
- Lambda 表达式
- Lambda表达式
- Lambda表达式
- Lambda 表达式
- bootstrap模态框
- JDK TOMCAT环境变量设置
- Python3.x 函数实例
- 数据结构实验之图论六:村村通公路
- Qt状态机场景模拟
- lambda表达式
- Android TextView使用HTML处理图片文字混合显示
- 运算符重载(复数类(Complex))
- 哇!Django 2.0 发布,不再支持 Python 2.x
- 除了人工智能工程师,还有一种工程师或许更抢手
- bzoj3503 [Cqoi2014]和谐矩阵(高斯消元)
- 深圳无人驾驶公交车试运行,刷爆朋友圈!
- ubuntu 14.04+ GTX 1070+cuda 8.0 + cudnn 5.1+opencv3.0+caffe-SSD配置一步到位
- LVS调度器之间的高可用(脚本)