资讯专栏INFORMATION COLUMN

lambda表达式无参数无返回值

张汉庆 / 1654人阅读

摘要:练习使用标准格式无参无返回题目给定一个厨子接口,内含唯一的抽象方法,且无参数无返回值。

3.7 练习:使用Lambda标准格式(无参无返回) 题目

给定一个厨子Cook接口,内含唯一的抽象方法makeFood,且无参数、无返回值。如下:

public interface Cook {
    void makeFood();
}

在下面的代码中,请使用Lambda的标准格式调用invokeCook方法,打印输出“吃饭啦!”字样:

public class Demo05InvokeCook {
    public static void main(String[] args) {
        // TODO 请在此使用Lambda【标准格式】调用invokeCook方法
    }

    private static void invokeCook(Cook cook) {
        cook.makeFood();
    }
}
解答
public static void main(String[] args) {
    invokeCook(() -> {
          System.out.println("吃饭啦!");
    });
}
备注:小括号代表Cook接口makeFood抽象方法的参数为空,大括号代表makeFood的方法体。

package com.itheima.demo04.Lambda;
/*
需求:
    给定一个厨子Cook接口,内含唯一的抽象方法makeFood,且无参数、无返回值。
    使用Lambda的标准格式调用invokeCook方法,打印输出“吃饭啦!”字样

*/
public class Demo01Cook {

public static void main(String[] args) {
    //调用invokeCook方法,参数是Cook接口,传递Cook接口的匿名内部类对象
    invokeCook(new Cook() {
        @Override
        public void makeFood() {
            System.out.println("吃饭了");
        }
    });

    //使用Lambda表达式,简化匿名内部类的书写
    invokeCook(()->{
        System.out.println("吃饭了");
    });

    //优化省略Lambda
    invokeCook(()-> System.out.println("吃饭了"));
}

//定义一个方法,参数传递Cook接口,方法内部调用Cook接口中的方法makeFood
public static void invokeCook(Cook cook){
    cook.makeFood();
}

}
package com.itheima.demo04.Lambda;
/*

定一个厨子Cook接口,内含唯一的抽象方法makeFood

*/
public interface Cook {

//定义无参数无返回值的方法makeFood
public abstract void makeFood();

}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/75994.html

相关文章

  • 乐字节-Java8新特性之函数式接口

    摘要:上一篇小乐带大家学过新特性表达式,什么时候可以使用通常表达式是用在函数式接口上使用的。使用实现创建产生一个工厂对象以上就是小乐带给大家的新特性之函数式接口,下一篇将会为大家带来新特性之方法引用,敬请关注。 上一篇小乐带大家学过 Java8新特性-Lambda表达式,什么时候可以使用Lambda?通常Lambda表达式是用在函数式接口上使用的。从Java8开始引入了函数式接口,其说明比较...

    lakeside 评论0 收藏0
  • 《Java8实战》-第三章读书笔记(Lambda达式-01)

    摘要:之前,使用匿名类给苹果排序的代码是的,这段代码看上去并不是那么的清晰明了,使用表达式改进后或者是不得不承认,代码看起来跟清晰了。这是由泛型接口内部实现方式造成的。 # Lambda表达式在《Java8实战》中第三章主要讲的是Lambda表达式,在上一章节的笔记中我们利用了行为参数化来因对不断变化的需求,最后我们也使用到了Lambda,通过表达式为我们简化了很多代码从而极大地提高了我们的...

    longshengwang 评论0 收藏0
  • 乐字节-Java8核心特性实战之函数式接口

    摘要:大家好,上一篇小乐给大家讲述了乐字节核心特性表达式,点击回顾。接下来继续核心特性之函数式接口。感谢大家欣赏小乐带来的核心特性之函数式接口,接下来还会更多核心技术讲解,请关注乐字节如需要视频课程,请搜索乐字节腾讯课堂 大家好,上一篇小乐给大家讲述了《乐字节-Java8核心特性-Lambda表达式》,点击回顾。接下来继续:Java8核心特性之函数式接口。 什么时候可以使用Lambda?通常...

    niceforbear 评论0 收藏0
  • lambda达式一,介绍

    摘要:体验的更优写法借助的全新语法,上述接口的匿名内部类写法可以通过更简单的表达式达到等效多线程任务执行启动线程这段代码和刚才的执行效果是完全一样的,可以在或更高的编译级别下通过。 jdk8 2014年加入了lambda表达式实例代码 showImg(https://segmentfault.com/img/bVbwb0V); showImg(https://segmentfault.com...

    ybak 评论0 收藏0
  • Java 8 新特性之Lambda达式

    摘要:概述简介是一个匿名函数,我们可以把表达式理解为是一段可以传递的代码将代码像数据一样进行传递。作为一种更紧凑的代码风格,使的语言表达能力得到了提升。任何满足单一抽象方法法则的接口,都会被自动视为函数接口。 1. 概述 1.1 简介 Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。可以写出更简洁、更灵活的代码。作为一种更...

    Ververica 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<