ArrayListとは?
Javaでリスト型のデータを扱う際に、最もよく利用されるのがArrayListです。配列と異なり、要素の追加や削除が動的に行えるという特徴があります。
ArrayListを使うメリット
- 要素の追加・削除が簡単: 配列のように事前にサイズを指定する必要がなく、柔軟に要素を増やしたり減らしたりできます。
- さまざまなメソッド: 要素の検索、ソート、挿入など、便利なメソッドが豊富に用意されています。
- ジェネリクスに対応: 扱うデータの型を指定できるため、型安全でコードの可読性も向上します。
ArrayListの基本的な使い方
import java.util.ArrayList;
public class ArrayListExample {
public static void main(String[] args) {
// String型の要素を持つArrayListを作成
ArrayList<String> names = new ArrayList<>();
// 要素を追加
names.add("太郎");
names.add("次郎");
names.add("三郎");
// 要素を取得
String name = names.get(1); // 2番目の要素を取得
System.out.println(name); // 出力: 次郎
// 要素を削除
names.remove(0); // 最初の要素を削除
// 全ての要素を表示
for (String str : names) {
System.out.println(str);
}
}
}
ArrayListの主なメソッド
- add(E e): リストの末尾に要素を追加します。
- add(int index, E element): 指定されたインデックスに要素を挿入します。
- get(int index): 指定されたインデックスの要素を取得します。
- remove(int index): 指定されたインデックスの要素を削除します。
- size(): リストの要素数を取得します。
- contains(Object o): リストに指定された要素が含まれているか確認します。
- clear(): リストの全ての要素を削除します。
ArrayListと配列の違い
特徴 | 配列 | ArrayList |
---|---|---|
サイズ | 固定 | 可変 |
要素の追加・削除 | 効率が悪い | 効率が良い |
メソッド | 少ない | 豊富 |
ジェネリクス | 非対応 | 対応 |
ArrayListの注意点
- 要素の型: ArrayListに格納する要素の型は、作成時に指定する必要があります。
- null要素: ArrayListにはnullを格納することができますが、nullの要素が存在するかどうかを常に確認する必要があります。
- 並列処理: 多スレッド環境でArrayListを共有する場合、ConcurrentModificationExceptionが発生する可能性があります。ConcurrentModificationExceptionを避けるためには、
Collections.synchronizedList()
やCopyOnWriteArrayList
を利用するなどの対策が必要です。
まとめ
ArrayListは、Javaでリスト型のデータを扱う上で非常に便利なクラスです。配列よりも柔軟に要素を操作でき、様々な場面で活用できます。 この記事では、ArrayListの基本的な使い方や、配列との違いなどを解説しました。ぜひ、実際のプログラミングでArrayListを活用してみてください。
コメント