栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Lamdba表达式

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Lamdba表达式

支持函数式编程:把函数本身作为参数传入。

优点:

简化了匿名内部类的编写

支持并行编程:多个处理器同时处理多个任务

缺点:

可读性差,代码越长越差
有条件限制,只有函数式接口才可以用

public class Test01 {
    public static void main(String[] args) {

        D d = new D() {
            @Override
            public int jisuan(int x, int y) {
                return x + y;
            }
        };
        int sum = d.jisuan(3, 4);
        System.out.println(sum);
    }


    interface D {
        public int jisuan(int x, int y);
    }
      
      
}
Lamdba的其他几种形式:

//形参类型可以不用写

(x,y)-> x+y

//如果实现体有很很多语句,则不可以省略花括号,return也得显示
(x,y)->{int z=x+y;return z;};  

//如果形参只有一个,前面的小括号都可以省略
x->x;  

函数可以作为参数

      
test(1,2,(x,y)->{int z=x+y;return z;});  //会发现把函数作为参数了
public static void test(int a,int b, D ) {
     d.jisuan(a, b);
 }

函数式接口

接口中只有一个抽象方法
@FunctionalInterface  //函数式接口的注解
 interface {
     public int a(int x);
 }

Lambda 表达式是在jdk1.8引入的

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/297899.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号