339Lambda表达式的无参数无返回值练习和340有参数有有返回值的练习
作者:互联网
无参数无返回值练习
//定义Cook接口 public interface Cook { public abstract void food(); }
//测试 public static void main(String[] args) { //调用Cook方法,参数Cook接口,传递Cook接口的匿名内部类对象 Cook(new Cook() { @Override public void food() { System.out.println("乐迪"); } }); //使用Lambda表达式,简化匿名内部类的书写 Cook(()->{ System.out.println("乐迪加速"); }); } //定义一个方法,参数传递Cook接口,方法内部调用Cook接口中的food方法 public static void Cook(Cook cook){ cook.food(); }
有参数有有返回值的练习
//Person 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; } @Override public String toString() { return "Person{" + "name='" + name + '\'' + ", age=" + age + '}'; } }
//测试 public static void main(String[] args) { Person[] arr = { new Person("迪迦",111), new Person("塞罗",222), new Person("泰罗",333) }; //对数组中的Person对象使用Arrays的sort方法通过年龄进行升序 // Arrays.sort(arr, new Comparator<Person>() { // @Override // public int compare(Person o1, Person o2) { // return o1.getAge()-o2.getAge(); // } // }); //使用Lambda表达式,简化匿名内部类 Arrays.sort(arr,(Person o1,Person o2)-> { return o1.getAge()-o2.getAge(); }); //遍历数组 for (Person person : arr) { System.out.println(person); } }
标签:name,age,练习,Person,参数,Cook,返回值,public,String 来源: https://www.cnblogs.com/agzq/p/16458647.html