zoukankan      html  css  js  c++  java
  • Java——Lambda表达式运用

    import java.util.Arrays;
    interface Test
    {
      public String speak(String s);
     
    }
    //1.可以用普通的类继承,实现接口
    //2.可以用匿名内部类,实现接口
    //3.可以用Lambda表达式,实现接口
    //简洁但有限制,Lambada表达式只可以实现只有一个方法的接口
    class Student
    {
      int age;
      String name;
      public Student(int a,String n)
      {
       age = a;
       name = n;
      }
      public Student() {}
      public int getAge()
      {
       return this.age;
      }
      public String getName()
      {
       return this.name;
      }
    @Override
    //添加的方法,重写Arrays里面的方法,方便输出
    public String toString() {
     return "Student [age=" + age + ", name=" + name + "]";
    }
    }
    //运用这个类,结合比较接口和Lambda表达式,实现比较输出。
    public class LambadaDemo {
     public static void main(String[] args)
     {
      Test test1 = new Test()
     {
       public String speak(String s)
       {
        System.out.println(s);
        return s;
       }
     };//匿名内部类实现接口。
     Test test2 = (s)->{System.out.println(s);return s;};
     //Lambda表达式实现接口
     //以下是运用比较接口和数组排序以及Lambada表达式实现的对象数组排序
     Student []st1 = {new Student(21,"wei"),new Student(18,"zhong"),new Student(20,"wang")};
     Arrays.sort(st1, (o1,o2)->o1.getAge()-o2.getAge());
     System.out.println(Arrays.toString(st1));
     }
    }
  • 相关阅读:
    Ansible import_playbook 导入playbook
    Ansible Playbook 变量传递
    Ansible Notify与Handler组合
    Ansible Role
    Ansible infile模块
    Ansible When有条件的运行任务
    Ansible register捕获命令输出
    Ansible Command Shell Raw模块区别
    Ansible Facts
    Ansible Jinjia2模块
  • 原文地址:https://www.cnblogs.com/wbwhy/p/12345143.html
Copyright © 2011-2022 走看看