码迷,mamicode.com
首页 > 其他好文 > 详细

Lambda简介

时间:2020-03-22 19:58:16      阅读:60      评论:0      收藏:0      [点我收藏+]

标签:public   抽象方法   UNC   实例化   为什么   简洁   color   style   lin   

  • 一、Lambda表达式简介
  • 二、Lambda表达式的基础语法
  • 三、Lambda表达式语法精简
  • 四、Lambda表达式语法进阶之函数引用
  • 五、Lambda表达式之综合案例--排序Comparator
  • 六、Lambda表达式之综合案例--forEach
  • 七、Lambda表达式之综合案例--removeIf
  • 八、Lambda表达式之综合案例--线程实例化
  • 九、系统内置函数接口
  • 十、闭包

 

1. 什么是Lambda?

Lambda是Java 8中添加的新特性, 说白了, Lambda就是一个匿名函数.

2. 为什么使用Lambda?

使用Lambda表达式可以对一个接口进行非常简洁的实现.

3. Lambda对接口的要求?

虽然可以使用Lambda表达式对某些接口进行简单的实现, 但是并不是所有的接口都可以用Lambda表达式来实现. 要求接口中定义的必须要实现的抽象方法只能是一个.

接口 default 关键字

表示接口中使用该关键字的抽象方法必须被实现.  在被外部引用时,可以不需要实现,直接使用.

** @FunctionInterface **

修饰函数式接口的, 接口中的抽象方法只有一个.
 
public class Program {
    public static void main(String[] args) {
        //使用接口实现类
        MyCompare myCompare = new MyCompare();

        //使用匿名内部类
        Compare compare = new Compare(){
            @Override
            public int compare(int a, int b) {
                return a+b;
            }
        };

        //使用Lambda表达式来实现接口
        Compare compare1 = (a,b) -> a -b;
    }
}


class MyCompare implements Compare{

    @Override
    public int compare(int a, int b) {
        return a+b;
    }
}


@FunctionalInterface    //该接口只可以有1种实现方式
interface Compare{
    int compare(int a, int b);
}

 

 
 

Lambda简介

标签:public   抽象方法   UNC   实例化   为什么   简洁   color   style   lin   

原文地址:https://www.cnblogs.com/shansm/p/12547539.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!