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

JAVA学习之Lambda表达式

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

JAVA学习之Lambda表达式

        Lambda表达式,可以避免匿名类太多,使用也方便。

        Lambda表达式的要求,要求接口必须是函数式接口(即只能有一个抽象方法)。

        Lambda表达式的形成

        匿名内部类

        

public class Demolambda {
    public static void main(String[] args) {
        iLove love = new iLove() {
            @Override
            public void love() {
                System.out.println("我爱你,是多么痛苦的信仰");
            }
        };
        love.love();
    }

}
interface iLove{
    void love();

}
简化1
public class Demolambda {
    public static void main(String[] args) {
        iLove love;
        love = ()-> {
                System.out.println("我爱你,是多么痛苦的信仰");
            };
        love.love();

    }

}
interface iLove{
    void love();

}
简化二,去大括号
public class Demolambda {
    public static void main(String[] args) {
        iLove love;
        love = ()-> System.out.println("我爱你,是多么痛苦的信仰");
        love.love();

    }

}
interface iLove{
    void love();

}
有参
public class Demolambda {
    public static void main(String[] args) {
        iLove love;
        love = (int a)-> System.out.println("我爱你,是多么痛苦的信仰"+a);
        love.love(521);
    }

}
interface iLove{
    void love(int a);

}
有参简化1,去类型 
public class Demolambda {
    public static void main(String[] args) {
        iLove love;
        love = ( a)-> System.out.println("我爱你,是多么痛苦的信仰"+a);
        love.love(521);
    }

}
interface iLove{
    void love(int a);

}
有参简化2,去括号
public class Demolambda {
    public static void main(String[] args) {
        iLove love;
        love = a-> System.out.println("我爱你,是多么痛苦的信仰"+a);
        love.love(521);
    }

}
interface iLove{
    void love(int a);

}

注意:1、如果有多个参数时,括号不能去

           2、参数类型要有都有,要去都去

           3、方法体只有一行代码时,才可以去掉大括号

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

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

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