如何在 Java 9 中以编程方式创建 JShell 实例?

javaobject oriented programmingprogramming

JShell 是自 Java 9 以来引入的交互式工具。它是 Java 的第一个官方 REPL 工具,用于在命令行中创建一个简单的编程环境,该环境读取用户的输入、对其进行评估并打印结果。

我们能够使用 Java 语言以编程方式创建一个新的 JShell 实例。JShell 及其相关 API 可以在 jdk.jshell 包下找到。我们可以使用 JShell 类的静态方法 create() 获取 JShell 的新实例。JShell 类的 eval() 方法用于向 JShell 实例添加表达式。它返回由评估触发的事件列表。它恰好是一个片段,类似于表达式语句方法变量声明导入语句。从eval()方法创建的每个 SnippetEvent 都使用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

相关文章