JShellは、Javaコードを実行するためのコマンドラインシェルです。以前の記事「NetBeans9.0のJava9でのJShellの使用、パート1」では、NetBeans 9でのJShellの開始について説明しました。クラスをインポートし、変数を明示的に作成および使用するためのコードスニペットをいくつかテストしました。この続きの記事では、変数の暗黙的な作成と使用、文字列比較の実行、およびJavaステートメントの実行について説明します。この記事には次のセクションがあります:
- 変数の宣言と使用(続き)
- 文字列の比較
- ステートメントの使用
- Javaシェルのリセット
- 結論
変数の宣言と使用(続き)
2つの記事の最初の記事では、変数の明示的な宣言と使用について説明しました。次に、変数の暗黙的な宣言と使用について説明します。
暗黙的に変数を作成する
変数を暗黙的に作成してJShellセッションに格納することは、Javaソースコードファイルが変数として暗黙的に格納される式の指定をサポートしていないため、JShellに固有の機能です。例として、次のコードスニペットを追加します。これは数字の1です。
1
図1に示すように、変数は暗黙的に作成されます。デフォルトでは、暗黙的に作成された変数の名前は $ xです。 、ここで x 変数識別子です。 1を追加する 変数$1を作成します 、図1に示すように、ただし、最初の選択肢が別の変数によってすでに使用されている可能性があるため、変数識別子はある程度任意です。
図1: 暗黙的に変数を作成する
新しい変数$1 図2に示すように、JShellで呼び出して、その値を出力できます。
図2: 暗黙の変数の呼び出し
値を生成する式はすべて変数に格納されます。例として、2つの数値を追加すると、暗黙的に変数が作成されます。
[5]-> 1+0 | $4 ==> 1
暗黙の変数はJShellで呼び出すことができます。
[6]-> $4 | $4 ==> 1
暗黙の変数は、別のコードスニペットで使用される場合があります。例として、2つの暗黙の変数 $ 1を追加します および$4 、および3番目の暗黙の変数が作成されます。
[7]-> $1+$4 | $8 ==> 2
上記のコマンドの出力を図3に示します。
図3: 暗黙の変数の使用
Math.PIなどのクラス定数の呼び出し 図4に示すように、暗黙の変数も作成します。
図4: クラス定数を呼び出して暗黙の変数を作成する
文字列 リテラルは暗黙の変数も作成します(図5を参照)。作成された暗黙の変数は、別のコードスニペットで使用される場合があります。例として、 System.out.printlnで 声明。暗黙の変数を直接呼び出すこともできます。
図5: 文字列リテラルからの暗黙の変数の作成
JShellで必要に応じて、ナローイングおよびワイド化プリミティブ変換が実行されます。例として、 intを追加します 図6に示すように、10進数を使用すると、拡大変換が実行され、10進数を使用して暗黙の変数が作成されます。
図6: 拡大プリミティブ変換の実行
文字列 連結は暗黙の変数も作成します。例として、2つの文字列を連結します リテラル。
"Hello"+" "+"JShell"
暗黙の変数が作成されます。 文字列のいずれか length()などのクラスメソッド およびsubstring(int、int) 、図7に示すように、暗黙的に作成された変数で呼び出すことができます。
図7: 暗黙の変数でメソッドを呼び出す
JShellでは、任意のタイプの変数を作成できます。例として、タイプ charの変数を作成します 、フロート 、および double intに加えて タイプ。
[1]-> int a=1; | a ==> 1 [2]-> int b=5; | b ==> 5 [3]-> char c='a'; | c ==> 'a' [4]-> float f=1.0f; | f ==> 1.0 [5]-> double d=5.0d; | d ==> 5.0
一方、 / list コマンドは、すべてのコードスニペット、 / varsを一覧表示します JShellのコマンドは、変数のみを一覧表示します。
[6]-> /vars | int a = 1 | int b = 5 | char c = 'a' | float f = 1.0 | double d = 5.0
以前、JShellで暗黙の拡張プリミティブ変換が行われる式について説明しました。割り当て時に、プリミティブ変換のナローイングとワイド化も行われます。ナローイングプリミティブ変換の例として、変数 cを割り当てます。 タイプchar int 値。
[6]-> c =5; | c ==> '