Java9 - REPL (JShell)
REPL 代表读取-评估-打印(Read-Eval-Print)循环。 有了 JShell,java 就有了 REPL 能力。 使用 REPL,我们可以编写和测试基于 java 的逻辑,而无需使用 javac 进行编译,并直接查看计算结果。
运行 JShell
打开命令提示符并键入 jshell。
$ jshell | Welcome to JShell -- Version 9-ea | For an introduction type: /help intro jshell>
查看 JShell 命令
一旦 jshell 命令开始运行,请键入 /help。
jshell> /help | Type a Java language expression, statement, or declaration. | Or type one of the following commands: | /list [<name or id>|-all|-start] | list the source you have typed | /edit <name or id> | edit a source entry referenced by name or id | /drop <name or id> | delete a source entry referenced by name or id | /save [-all|-history|-start] <file> | Save snippet source to a file. | /open <file> | open a file as source input | /vars [<name or id>|-all|-start] | list the declared variables and their values | /methods [<name or id>|-all|-start] | list the declared methods and their signatures | /types [<name or id>|-all|-start] | list the declared types | /imports | list the imported items
运行 JShell 命令
一旦 jshell 命令开始运行,键入 /imports 并查看使用的导入。
jshell> /imports | import java.io.* | import java.math.* | import java.net.* | import java.nio.file.* | import java.util.* | import java.util.concurrent.* | import java.util.function.* | import java.util.prefs.* | import java.util.regex.* | import java.util.stream.* jshell>
在 JShell 中运行计算。
尝试在 JShell 中运行简单的计算。
jshell> 3+1 $1 ==> 4 jshell> 13%7 $2 ==> 6 jshell> $2 $2 ==> 6 jshell>
在 JShell 中创建和使用函数
创建一个函数 doubled() 以获取 int 并返回其双倍值。
jshell> int doubled(int i){ return i*2;} | created method doubled(int) jshell> doubled(6) $3 ==> 12 jshell>
退出 JShell
Type /exit.
jshell> /exit | Goodbye