【Java 9】JShellでArrayListを実装・操作する方法を解説
JShellとは?
JShellは、シェル上からJavaコードをその場で実行し、結果を即座に表示できる対話型のJavaシェルツールです。JShellはREPL(Read Evaluate Print Loop)と呼ばれる仕組みを採用しており、コマンドラインから直接利用できます。コマンドプロンプトで「jshell」と入力するだけで起動でき、終了する場合は「/exit」コマンドを実行します。短いコード断片を試すだけであれば、main()メソッドを用意する必要がない点が大きな特徴です。
さらに、JShellを使えばList、Map、Setといった主要なコレクションも手軽に試すことができます。以下の例では、いくつかの典型的な操作シナリオを通じてArrayListの基本的な使い方を確認していきましょう。
ArrayListの実装例
C:\Users\User\Desktop\Java 9 QNA>jshell
| Welcome to JShell -- Version 9.0.4
| For an introduction type: /help intro
jshell> ArrayList<String> list = new ArrayList<String>();
list ==> []
jshell> list.add("Jai");list.add("Adithya");list.add("Raja");list.add("Chaitanya");
$2 ==> true
$3 ==> true
$4 ==> true
$5 ==> true
jshell> list
list ==> [Jai, Adithya, Raja, Chaitanya]
jshell> list.isEmpty()
$7 ==> false
jshell> list.get(3)
$8 ==> "Chaitanya"
jshell> list.get(9)
| java.lang.IndexOutOfBoundsException thrown: Index 9 out-of-bounds for length 4
| at Preconditions.outOfBounds (Preconditions.java:64)
| at Preconditions.outOfBoundsCheckIndex (Preconditions.java:70)
| at Preconditions.checkIndex (Preconditions.java:248)
| at Objects.checkIndex (Objects.java:372)
| at ArrayList.get (ArrayList.java:440)
| at (#9:1)
jshell> list.size()
$10 ==> 4
jshell> if(list.isEmpty()) System.out.println("Empty"); else System.out.println("Not Empty");
Not Empty
各操作のポイント
- list.add(要素):リストの末尾に要素を追加します。追加に成功するとtrueが返されます。
- list.isEmpty():リストが空であるかどうかを判定します。
- list.get(インデックス):指定した位置の要素を取得します。存在しないインデックスを指定するとIndexOutOfBoundsExceptionがスローされるため注意が必要です。
- list.size():現在の要素数を返します。
なお、変数名を付けずに式を評価した場合、JShellは自動的に「$2」「$3」のような一時的な変数名を割り当てます。また、if文などの制御構文も1行であればそのまま実行できるため、動作確認やJavaの学習用途に非常に便利なツールです。
-
JavaでArrayListを初期化する方法|Arrays.asList()の使い方を解説
Javaでリストを初期化する際には、Arrays.asList()メソッドとArrayListクラスが活用されます。通常のListインターフェースは直接オブジェクトを生成できないため、空のリストを作成するにはArrayListクラスが必要です。さらに、Arrays.asList()メソッドを使えば、初期値を持つArrayListを簡単に初期化できます。 ArrayListとは?Javaにおける基本的な役割 ArrayListの初期化とは、あらかじめ用意した値のセットをリストに代入する処理のことです。JavaでArrayListを扱うには、その初期化方法を理解しておくことが不可欠です。 ここで
-
Java 9でJavaFXを使ってJShellをプログラムから実装する方法
JShellは、サンプル式を対話的に実行できるツールです。通常はコマンドラインから利用しますが、JavaFXアプリケーションの中でプログラム的にJShellを実装することも可能です。その場合、Javaプログラムに以下のパッケージをインポートする必要があります。import jdk.jshell.JShell; import jdk.jshell.SnippetEvent; import jdk.jshell.VarSnippet;これらのクラスの役割は次のとおりです。JShell:評価エンジンの本体。式や文を評価(eval)するためのAPIを提供します。SnippetEvent:評価結果として