リスト
リストは、Rubyの配列と似たデータ管理の仕組みで、以下の特徴がある。
- 要素を順序づけて管理する
- 要素を事後的に追加したり削除できる
また、Javaのリストには、以下の2種類がある。
- ArrayList
- LinkedList
ArrayListの方が使用頻度が高い。
ArrayList
ArraListは「可変長配列」を使用するための仕組み。
可変長配列とは、文字通り長さ(要素数)を変更できる配列のこと。
Rubyの配列は可変長なので、Javaの配列よりもArrayListの方が性質や使い方が近い。
ArrayListの使い方
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<Integer> scores = new ArrayList<Integer>();
scores.add(1);
scores.add(5);
scores.add(10);
scores.add(15);
System.out.println(scores.get(0));
System.out.println(scores.get(1));
System.out.println(scores.get(2));
System.out.println(scores.get(3));
}
}
以下が実行結果
1
5
10
15
ArrayListを使用する際の手順
- ライブラリをインポートする
- ArrayListの宣言を行う
- ArrayListに値を代入する
- ArrayListから要素を取り出す
1. ライブラリをインポートする
ArrayListを使用する際は、ライブラリのインポートが必要になる。
インポートするには、ファイルの冒頭に以下の記述を行う。
import java.util.ArrayList;
2. ArrayListの宣言を行う
ArrayListの宣言と初期化は以下のように行う。
ArrayList<データ型> scores = new ArrayList<データ型>();
先述のコードでは、整数を格納するArrayListを作成したので、以下のように記述した。
ArrayList<Integer> scores = new ArrayList<Integer>();
ここでは、以下の2つの動作を行っている。
- 整数(Integer)を格納するArrayListを「scores」という名称で宣言
- ArrayListの要素を作成
そして、 1 に 2 を代入している。
また、右辺でも要素のデータ型を指定していますが、これは省略が可能。
以下のように記述しても問題なく動作する。
ArrayList<Integer> scores = new ArrayList<>();
右辺の Integer
の記述を省略している。
3. ArrayListに値を代入する
ArrayListに要素を追加するためにはaddメソッドを使用する。
記述は、add(要素として追加する値)のように行います。
先述のコードでは、scoresという名称のArrayListに「1」「5」「10」「15」を追加している。
scores.add(1);
scores.add(5);
scores.add(10);
scores.add(15);
addメソッドを使用すると、要素はArrayListの末尾に追加される。
4. ArrayListから要素を取り出す
要素を取り出す際は、getメソッドを使用する。
記述は、get(取得したい要素のインデックス) のように行う。
配列から要素を取り出す際と同様に、「1番目」の要素を取り出したい時は、インデックスとして「0」を指定する。
先述のコードでは、scoresから、1番目、2番目、3番目、4番目の順に要素を取得している。
scores.get(0)
scores.get(1)
scores.get(2)
scores.get(3)