《core JAVA for the impatient》阅读笔记(2) lambda表达式

lambda表达式

  • 只有一个抽象方法的接口对象,就可以提供一个lambda表达式(函数式接口)
  • 将lambda表达式放入类型为函数式接口的变量中,这样它就被转换为该接口的实例
  • list.removeIf(e ->e==null)
  • Arrays.sort(words,(first,second)->first.length()-second.length())
  • 不区分大小写的方法引用:
  • Arrays.sort(words,(first,second)->first.compareToignoreCase(second))
  • 三种使用方式
  1. 类::实例方法
    String::compareToIgnoreCase等同于(x,y) -> x.compareToIgnoreCase(y)
  2. 类::静态方法
    Objects::isNull等同于x->Objects.isNull(x)
  3. 对象::实例方法
    System.out::println等同于x ->System.out.println(x)

猜你喜欢

转载自blog.csdn.net/m0_37753327/article/details/82966331