java8-01-初识Lambda表达式

为什么用 Lambda表达式
         在java8之前  java语言 方法调用  无法将函数作为一个参数      也无法声明返回一个函数
         对比 javaScript是典型函数式语言
 
总结:  Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中) lambda 表达式使代码简洁紧凑。
 
 
引出------->函数式编程
        函数式编程--->强调行为
       它允许我们将一个函数当作方法的参数(传递函数)---------->(原来传递参数就是具体的数据)
 
 
 
 
什么是 Lambda表达式
 
 Lambda 表达式是一个匿名函数 也可称为闭包  用来表示匿名内部类(函数内部类的函数) 
 它是推动 Java 8 发布的最重要新特性。
 
 
 
 
 
怎么用 Lambda表达式
 
        Lambda基本结构
                        ()->{方法体}     //参数类型可省略  上下文可推断出来
                                            (参数类型1  参数1, 参数类型2  参数2) ->{方法体}
                                             也可简化为  参数1 -> {方法体}
     1遍历中使用                               
 1 public class TestLambda {
 2 
 3     public static void main(String[] args) {
 4 
 5         List<Integer> list = Arrays.asList(1, 3, 6, 9);
 6 
 7         for (int i = 0; i < list.size(); i++) {
 8             System.out.println(list.get(i));
 9         }
10 
11         System.out.println("-------传统遍历-------");
12         for (Integer i : list) {
13             System.out.println(i);
14         }
15 
16         System.out.println("使用Lambda表达式遍历");
17 
18         list.forEach(i -> {
19             System.out.println(i);
20         });
21 
22     }
23 
24 }
View Code

 

 
     2.线程中使用

 

 1 package com.wf.zhang.java8.lamdba;
 2 
 3 public class TestLambda2 {
 4 
 5 
 6     public static void main(String[] args) {
 7 
 8         Runnable runnable = new Runnable() {
 9             @Override
10             public void run() {
11                 System.out.println("调用run方法");
12             }
13         };
14 
15 
16         Runnable runnable2 = () -> System.out.println("Lambda表达式调用run方法");
17 
18     }
19 
20 }
View Code

 

 
posted @ 2019-11-02 11:49  wf.zhang  阅读(144)  评论(0编辑  收藏  举报