原创生活

国内 商业 滚动

基金 金融 股票

期货金融

科技 行业 房产

银行 公司 消费

生活滚动

保险 海外 观察

财经 生活 期货

当前位置:滚动 >

Android中Lambda表达式进化 Java-函数式编程

文章来源:财金网  发布时间: 2019-04-11 11:50:56  责任编辑:cfenews.com
+|-

【原标题:Android中Lambda表达式进化 Java-函数式编程】Lambda表达式

java12正式发布,咱们还没把java8搞清楚呢,说什么合格的java开发者。今天就开始整理一些java8的新特性。lambda表达式

lambda表达式的标准形式

(parameters) -> expression

(parameters) ->{statements; }

以下是lambda表达式的重要特征:

·        可选类型声明:不需要声明参数类型,编译器可以统一识别参数值。

·        可选的参数圆括号:一个参数无需定义圆括号,但多个参数需要定义圆括号。

·        可选的大括号:如果主体包含了一个语句,就不需要使用大括号。

·        可选的返回关键字:如果主体只有一个表达式返回值则编译器会自动返回值,大括号需要指定明表达式返回了一个数值。

public class Lambda {    public static void main(String[] args) {        //没有参数时小括号一定要打,代码块需要打大括号        //更加简单的实现接口        Runnable r = () -> {            System.out.println("test");            System.out.println("test2");        };                new Thread(r).start();                //一个参数时,可以打小括号,也可以不打        //集合遍历也可以使用lambda表达式        //一句代码时可以打大括号,也可以不打        Listints = Arrays.asList(1, 2, 3, 4);        ints.forEach(e -> System.out.println(e));                //多个参数,参数的小括号一定要打        //更加简单的实现接口        opration o = (a, b) -> {            System.out.println(a + b);                        return a + b;        };        o.add(1, 2);    }        interface opration{              int add(int a, int b);    }}

Lambda 表达式主要用来定义行内执行的方法类型接口,当一个接口中存在多个抽象方法时,如果使用lambda表达式,并不能智能匹配对应的抽象方法,因此引入了函数式接口的概念,函数式接口就是只定义了一个抽象方法的接口

Lambda 表达式免去了使用匿名方法的麻烦,并且给予Java简单但是强大的函数化的编程能力。

专题首页|财金网首页

原创
新闻

精彩
互动

独家
观察

京ICP备2021034106号-38   营业执照公示信息  财金网  版权所有  cfenews.com  投稿邮箱:362293157@qq.com  业务QQ:362293157立即发帖