JShell 是自Java 9以来引入的交互式工具。它是Java的第一个官方REPL工具,用于在命令行中创建简单的编程环境,以读取用户的输入,对其进行评估并打印结果。
我们可以用Java语言以编程方式创建一个 新的JShell实例 。可以在jdk.jshell 包中找到JShell及其关联的API 。我们可以使用静态方法:JShell类的create()获得JShell的新实例。JShell类的eval()方法用于向JShell实例添加表达式。它返回评估触发的事件列表。就像表达式,语句,方法,类,变量 声明或import 语句一样,它只是一个片段。Ë ACH SnippetEvent从创建的eval()方法通过使用SnippetEvent.value()检查表达式的输出。
import java.util.List; import jdk.jshell.*; public class JShellTest { public static void main(String args[]) { JShell jshell = JShell.create(); List<SnippetEvent> list = jshell.eval("int x = 7+3*4;"); System.out.println("Size of list: " + list.size()); System.out.println("Value of the expression is : " + list.get(0).value()); } }
输出结果
Size of snippetEventList : 1 Value of the expression is : 19