如何在Java 9的JShell中实现lambda表达式?

JShell 是Java的第一个REPL 命令行工具,可以交互式使用Java编程语言元素。通过使用此工具,我们可以隔离类来测试功能。JShell 命令行中创建了一个简单易用的编程环境,该环境从用户那里获取输入,然后读取并打印结果。甲lambda表达式是已经不属于任何类创建的功能。

在下面的示例中,我们可以在JShell中实现lambda表达式。

C:\Users\User>jshell
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro

jshell> Consumer<String> s = (String s) -> System.out.println(s)
s ==> $Lambda$14/1268066861@3159c4b8


如果我们忘记了消费者 接口的方法,则输入创建的变量的名称,后面接一个点 ,然后按Tab。它填充了可以在Consumer接口上调用的方法的列表。

jshell> s.
accept( andThen( equals( getClass() hashCode()notify() notifyAll() toString() wait(

jshell> s.accept("Welcome to Nhooo")
Welcome to Nhooo