A New Start

Lambda表达式(一):入门

一、先睹为快

先上段经典代码来让客官瞧一瞧

相比于原先排序功能需要好多行的代码,现如今简洁了不少,当然了,这些代码的执行结果当然是一样的。

二、说明和分析

  • 读音:同 λ(兰姆达),理科生出生必然很熟悉这个符号

  • 写法:由三部分构成, 逗号分隔的参数列表  ->  函数体 

  • 概念:Lambda允许把函数作为一个方法的参数,或者把代码看成数据

对于shield.sort((s1, s2) -> s1.compareTo(s2));这段代码,其实写齐全一点,可以是shield.sort((String s1, String s2) -> {return s1.compareTo(s2); }); 但是由于Java编译器能够自动识别参数的类型,所此处省略参数类型 String,另外,当函数体内部是由一行代码块构成的时候,花括号“{ }”也是可以省略的。

对于shield.sort(String::compareTo);这段代码,其实是Java 8 所允许的可以通过 :: 关键字来获取方法或构造函数的引用,本例中便是获取方法,下面的例子便是获取构造函数的引用。

 

点赞
  1. 2fps说道:

    卡哇伊呢,粉一下,再做个小广告

发表评论

电子邮件地址不会被公开。 必填项已用*标注

%d 博主赞过: