Lambda表达式的无参数无返回值的练习和有参数有返回值的练习
Lambda表达式的无参数无返回值的练习
public interface Cook { public abstract void makeFood(); }
public class CookTest { public static void main(String[] args) { invoke(()->{ System.out.println("吃饭"); }); } //定义一个方法参数传递cook接口,内部调用Cook接口中的方法makeFood public static void invoke(Cook cook){ cook.makeFood(); } }
有参数有返回值的练习
使用数组存储多个Person对象
对数组中的Person对象使用Arrays的sort方法通过年龄进行升序排序
public static void main(String[] args) { Person[] arr={new Person("张三",11), new Person("李四",20), new Person("王五",10) }; //对数组中的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 p : arr){ System.out.println(p); } }