展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

Lambda表达式

  • jdk8之前创建线程
public class Main {
    public static void main(String[] args) throws Exception {
        new Thread(new Runnable() {
            @Override
            public void run() {
                System.out.println("小滴课堂学习java架构课程");
            }
        }).start();
    }
}
  • jdk8之后创建线程
public class Main {
    public static void main(String[] args) throws Exception {
        new Thread(()->System.out.println("小滴课堂学习java架构课程")).start();
    }
}
  • jdk8之前排序
public class Main {
    public static void main(String[] args) throws Exception {
        List<String> list = Arrays.asList("aaa","ggg","fff","ccc");
        Collections.sort(list, new Comparator<String>() {
            @Override
            public int compare(String a, String b) {
                return b.compareTo(a);
            }
        });
        for(String string : list){
            System.out.println(string);
        }
    }
}
  • jdk8之后排序
public class Main {
    public static void main(String[] args) throws Exception {
        List<String> list = Arrays.asList("aaa","ggg","fff","ccc");
        Collections.sort(list,( a,  b)-> b.compareTo(a));
        for(String string : list){
            System.out.println(string);
        }
    }
}
  • 函数接口:⼀个接⼝中只包含⼀个⽅法,则可以使⽤Lambda表达式
第⼀部分为括号内⽤逗号分隔的形式参数,参数是函数式接⼝⾥⾯⽅法的参数;
第⼆部分为⼀个箭头符号:->;
第三部分为⽅法体,可以是表达式和代码块

参数列表 :
 括号中参数列表的数据类型可以省略不写
 括号中的参数只有⼀个,那么参数类型和()都可以省略不写
⽅法体:
 如果{}中的代码只有⼀⾏,⽆论有返回值,可以省略{},return,分号,要⼀起省略,其他则需要加上
  • 案例
public class Main {
    public static void main(String[] args) throws Exception {
        new Thread(() -> {
            System.out.println("小滴课堂学习java架构课程");
            System.out.println("小滴课堂学习java架构课程2");
            System.out.println("小滴课堂学习java架构课程3");
        }).start();
    }
}
posted @ 2022-08-24 09:36  DogLeftover  阅读(13)  评论(0编辑  收藏  举报