JDK1.8自学之路-07(lambda表达式基本使用接受1个参数且没有返回值的使用方法)

练习:

1.接口

package com.citic._06lambda;

/**
 * @Package: com.citic._06lambda
 * @ClassName: IComputeService
 * @Description: <p>Description: </p>
 * @author: zq
 * @since: 2020/5/5 22:31
 * @version: 1.0
 * @Copyright: 2020 zq. All rights reserved.
 */
public interface IComputeService {

    void print(String str);

}

2.测试类

package com.citic._06lambda;

/**
 * @Package: com.citic._05annoymousObject
 * @ClassName: Test
 * @Description: <p>Description: </p>
 * @author: zq
 * @since: 2020/5/5 22:32
 * @version: 1.0
 * @Copyright: 2020 zq. All rights reserved.
 */
public class Test {

    public static void main(String[] args) {

        //匿名对象方法,一次编写一次使用,面向过程编程
        IComputeService service = new IComputeService() {
            @Override
            public void print(String str) {
                System.out.println(str);
            }
        };
        service.print("hello service");

        //使用lambda表达式的写法:常规写法
        IComputeService service2 = (String str) -> {
            System.out.println(str);
        };
        service2.print("hello service2");

        //使用lambda表达式的写法:简写
        //1、形参列表中数据类型可以不写,可以自动推断
        IComputeService service3 = str -> {
            System.out.println(str);
        };
        service3.print("hello service3");

        //使用lambda表达式的写法:简写
        //1、形参列表中数据类型可以不写,可以自动推断
        //2、如果方法中的代码只有一句,可以省略掉大括号{}。如果是return返回数据的,可以省略return
        IComputeService service4 = str -> System.out.println(str);
        service4.print("hello service4");
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章