Lamdba表达式的无参数无返回值的练习-Lambda表达式有参数有返回值的练习
Lamdba表达式的无参数无返回值的练习
题目
给定一个厨子Cook接口,内含唯一的抽象方法makeFood,且无参数、无返回值。如下∶
public interface cook {
void makeFood();
}
在下面的代码中,请使用Lambda的标准格式调用invokeCopk方法,打印输出"吃饭啦! "字样:
package Demo01.Lambda; public class Demo01Cook { public static void main(String[] args) { //调用invoke Cook方法,参数是Cook接口,传递Cook接口的匿名内部类对象 invokeCook(new Cook() { @Override public void makeFood() { System.out.println("吃饭了"); } }); //使用Lambda表达式,简化匿名内部类的书写 invokeCook(()->{ System.out.println("吃饭了"); }); } public static void invokeCook(Cook cook){ cook.makeFood(); } }
Lambda表达式有参数有返回值的练习
package Demo01.Lambda; import java.util.Arrays; import java.util.Comparator; public class Demo01Arrays { public static void main(String[] args) { //使用数组存储多个 Person Person[] arr ={ new Person("柳岩",38), new Person("张三是",18), new Person("十四",19) }; //对数组中的Person对象使用Arrays的sort方法通过年龄进行升序(前排-后排)排序 Arrays.sort(arr, new Comparator<Person>() { @Override public int compare(Person o1, Person o2) { return o1.getAge()-o2.getAge(); } }); //遍历数组 for (Person p : arr) { System.out.println(p); } } }
package Demo01.Lambda; public class Person { private String name; private int age; public Person(String name, int age) { this.name = name; this.age = age; } public Person() { } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)