REPL代表Read-Eval-Print Loop 。 使用JShell,Java具有REPL
功能。 使用REPL,我們可以編寫和測試基於java的邏輯,而無需使用javac編譯並直接檢視計算結果。
執行JShell
開啟命令提示字元並鍵入jshell
,執行結果如下所示 -
檢視JShell命令
當進入jshell
命令之後,可鍵入/ help
來檢視jshell
中的幫助資訊。
jshell> /help
.... 一大波幫助說明資訊,此處省略 ...
/vars [<名稱或 id>|-all|-start]
| 列出已宣告變數及其值
| /methods [<名稱或 id>|-all|-start]
| 列出已宣告方法及其簽名
| /types [<名稱或 id>|-all|-start]
| 列出已宣告的型別
| /imports
| 列出匯入的項
| /exit
| 退出 jshell
| /env [-class-path <路徑>] [-module-path <路徑>] [-add-modules <模組>] ...
| 檢視或更改評估上下文
| /reset [-class-path <路徑>] [-module-path <路徑>] [-add-modules <模組>]...
| 重新啟動 jshell
| /reload [-restore] [-quiet] [-class-path <路徑>] [-module-path <路徑>]...
| 重置和重放相關歷史記錄 -- 當前歷史記錄或上一個歷史記錄 (-restore)
| /history
| 您鍵入的內容的歷史記錄
| /help [<command>|<subject>]
| 獲取 jshell 的相關資訊
| /set editor|start|feedback|mode|prompt|truncation|format ...
| 設定 jshell 組態資訊
| /? [<command>|<subject>]
| 獲取 jshell 的相關資訊
| /!
| 重新執行上一個片段
| /<id>
| 按 id 重新執行片段
| /-<n>
| 重新執行前面的第 n 個片段
|
| 有關詳細資訊, 請鍵入 '/help', 後跟
| 命令或主題的名稱。
| 例如 '/help /list' 或 '/help intro'。主題:
|
| intro
| jshell 工具的簡介
| shortcuts
| 片段和命令輸入提示, 資訊存取以及
| 自動程式碼生成的按鍵說明
| context
| /env /reload 和 /reset 的評估上下文選項
執行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()
用來返回其引數的兩倍的值。
jshell> int doubled(int i){ return i*2;}
| created method doubled(int)
jshell> doubled(6)
$3 ==> 12
jshell>
退出JShell
鍵入/exit
。
jshell> /exit
| Goodbye