zoukankan      html  css  js  c++  java
  • Java基础之lambda表达式

    一、lambda:简化代码

      lambda: λ 组成:

        逗号隔开的参数列表(x,x,x);

        箭头符号  ->

        方法体 λ代码块

    实例:

    public class test_lambda {
    
        public static void test(){
            new Thread(new Runnable() {
                @Override
                public void run() {
                    System.out.println("run....");
                }
            }).start();
        }
        public static void main(String[] args) {
    
            test();
        }
    }
    

      简单的线程代码。

    修改test()函数:

    public static void test2(){
            new Thread(
                    () ->System.out.println("run....")
                ).start();
        }
    

      

     运行成功。

    注意:为了避免不能区分lambda到底是重写的哪个方法,语法上lambda要求重写的接口、抽象类中有且只能有一个抽象方法。

    @FunctionalInterface注解,表明该接口中有且只有一个抽象方法。称之为函数式接口。

    即使没有标注@FunctionalInterface,但是只有一个抽象方法,也称之为函数式接口。

    特殊情况:如果某个接口中有多个抽象方法,但只有一个抽象方法是新定义的,其他抽象方法和Object中已有的抽象方法重复,那么该接口仍然是函数式接口。

     仍是函数式接口。

  • 相关阅读:
    自制2048小游戏(附源码)
    PyQt5设计思路(长期更新,每写一篇新博客都会更新一次)
    Orthogonal table 实现理论
    Convex Hull 实现理论
    elasticsearch 命令操作
    Springboot
    2018/3/8错题解析
    初始MyBatis
    如何做好微信订阅号
    在路上,三线城市互联网创业记录
  • 原文地址:https://www.cnblogs.com/jccjcc/p/14194842.html
Copyright © 2011-2022 走看看