Java8---Lambda表达式

1、概述

    匿名函数;

    对 一个接口 抽象方法 重写;

      只需要关注 抽象方法的 参数、方法体

    语法

      (参数) -> { 要执行的代码 }

2、Lambda省略规则

    小括号:

      小括号 内的参数类型 可以省略;

      如果小括号内 有且仅有一个参数,小括号可以省略;

    大括号:

      如果大括号内 有且仅有一个语句,可同时省略 大括号、return、分号

3、Lambda使用的前提

    方法的参数 | 局部变量类型  必须是 接口;

    接口中 有且仅有一个 抽象方法;

package lambda;

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

        //参数是接口
        test(()->System.out.println("i can fly..."));

        //局部变量是接口
        Fly fly=()->System.out.println("i can fly");
    }

    public static void test(Fly fly){

    }
}

interface Fly{
    public abstract void fly();
}

 4、JDK8提供了一个注解@FunctionalInterface

  @FunctionalInterface作用:检测该接口是否只有一个抽象方法

        

  

posted on 2019-12-26 11:52  anpeiyong  阅读(222)  评论(0编辑  收藏  举报

导航