Lambda简介

Posted shansm

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Lambda简介相关的知识,希望对你有一定的参考价值。

  • 一、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简介的主要内容,如果未能解决你的问题,请参考以下文章

IntelliJ:求值lambda表达式在调试时引发编译错误

JDK8

Lambda 表达式

使用 savedInstanceState 保存和恢复 Kotlin lambda

Lambda简介

Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段