Java
 Computer >> コンピューター >  >> プログラミング >> Java

Java 9のJShellで使える/varsコマンドの種類と使い方を徹底解説

JShellとは

JShellは、Java 9で導入された対話型のコマンドラインツールです。REPL(Read-Eval-Print Loop)とも呼ばれ、ユーザーの入力を受け取り、それを評価して結果を出力します。

JShellでは、内部コマンド「/vars」を使用することで、セッション中に作成されたすべての変数を一覧表示できます。JShellには、以下のように複数の「/vars」コマンドが用意されています。

/vars
/vars [ID]
/vars [変数名]
/vars -start
/vars -all

各コマンドの役割

  • /vars:現在のセッションで有効なすべての変数の一覧を表示します。
  • /vars [ID]:指定したIDに対応する変数とその値を表示します。このIDは、JShellが式に対して自動的に割り当てた名前($1、$2…)に対応します。
  • /vars [変数名]:指定した変数名とその値を表示します。
  • /vars -start:JShellの起動スクリプトに追加されているすべての変数を表示します。
  • /vars -all:起動時に読み込まれた変数を含め、有効無効の両方の変数をすべて一覧表示します。

/varsコマンドの実行例

以下のコード例では、まず式と変数を作成し、その後にさまざまな「/vars」コマンドを実行した結果を確認できます。

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

jshell> 2 + 4
$1 ==> 6

jshell> /vars
|   int $1 = 6

jshell> int x = 20
x ==> 20

jshell> /vars
|   int $1 = 6
|   int x = 20

jshell> /vars $1
|   int $1 = 6

jshell> /vars x
|   int x = 20

jshell> /vars -all
|   int $1 = 6
|   int x = 20

jshell> /drop x
| dropped variable x

jshell> /vars -all
|   int $1 = 6
|   int x = (not-active)

このように、「/drop」コマンドで削除した変数は「(not-active)」という状態で表示されます。「/vars -all」を使えば、すでに無効になった変数も含めてすべて確認できるため、セッション全体の変数の状態を把握したい場合に非常に便利です。

  1. Java 9 JShellの起動スクリプト(DEFAULT・JAVASE・PRINTING)の違いと使い方

    JShellは、Java 9で導入された対話型のJavaシェルツールです。コマンドラインプロンプトから起動でき、入力したコードをその場で評価して結果を即座に表示します。いわゆるREPL(Read-Evaluate-Print-Loop:読み込み→評価→表示→繰り返し)ツールとして動作するため、コード断片の動作確認やAPIの学習に非常に便利です。 起動スクリプトの指定方法(--startupフラグ) JShellでは、起動時にスクリプトを読み込むことで、あらかじめ定義済みのimport文や便利なメソッドを使える状態でセッションを開始できます。起動スクリプトを指定するには「--startup」フ

  2. Java 9のJShellで使える「/edit」コマンドの種類と使い方

    JShellは、Java 9で導入されたコマンドラインツールです。main()メソッドを用意しなくても、宣言・ステートメント・式をその場で評価できるのが大きな特徴です。さらに、JShellにはJShell Edit Padという簡易テキストエディタが組み込まれており、「/edit」コマンドで起動することで、入力済みのコードを手軽に編集できます。 /editコマンドの3つの形式 JShellで利用できる「/edit」コマンドには、次の3つの形式があります。 /edit /edit [ID] /edit [コード名] /edit:引数なしで実行すると、現在アクティブなすべてのコードがテキストエデ