Java 8 允许你使用 :: 关键字来传递方法或者构造函数引用

方法引用语法格式有以下三种:

  • objectName::instanceMethod
  • ClassName::staticMethod
  • ClassName::instanceMethod

如:

System.out::println
String str = "ABc";
str::toLowerCase;

System.out::println等同于x->System.out.println(x)

最后一种方式,等同于把lambda表达式的第一个参数当成instanceMethod的目标对象,其他剩余参数当成该方法的参数。
比如String::toLowerCase等同于x->x.toLowerCase()。

 

构造器引用语法如下:ClassName::new,把lambda表达式的参数当成ClassName构造器的参数 。

例如BigDecimal::new等同于x->new BigDecimal(x)。

相关文章:

  • 2022-12-23
  • 2021-06-28
  • 2021-11-17
  • 2022-01-25
  • 2022-01-13
  • 2021-05-30
  • 2021-09-26
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-01-01
  • 2021-06-21
  • 2021-10-18
  • 2021-12-13
  • 2022-12-23
  • 2022-03-07
相关资源
相似解决方案