Lamdba表达式

    科技2024-08-05  27

    Lamdba表达式

    无参数 无返回值

    由三部分组成 参数 箭头 代码

    格式:(参数列表)->{一些重写方法的代码} 解释说明格式:

    ():接口中抽象方法的参数列表,没有参数空着,多个参数 逗号隔开

    ->:传递参数

    {}:重写方法代码

    注:只有接口中只有一个抽象方法时 才能使用lamdba表达式

    例一

    使用lambda表达式,实现多线程

    public class Demo02Lamdba { public static void main(String[] args) { new Thread(()->{ System.out.println(Thread.currentThread().getName()+"新线程创建"); }).start(); } }

    例二

    使用lamdba表达式实现File过滤器

    public class demo03递归打印多级目录 { public static void main(String[] args) { df(new File("D:\\JetBrains_2020\\IdeaProjects\\basic-code\\08_FileAndRecursion")); } private static void df(File f){ //使用lambda表达式 File[] files=f.listFiles((File dir, String name)->{ return new File(dir,name).isDirectory()||name.toLowerCase().endsWith(".java"); });//传递过滤器对象 for(File f0:files){ if (f0.isDirectory()){ df(f0); } else{ System.out.println(f0); } } } }
    Processed: 0.009, SQL: 8