【Java学習|初心者向け】Javaコレクション操作の基本!addとaddAllを使いこなして効率的なデータ管理を始めよう

1. 導入:なぜaddとaddAllが重要なのか

Javaでプログラミングをしていると、必ずと言っていいほど「複数のデータをまとめて扱いたい」という場面に遭遇します。その際、ListやSetといったコレクションは必須の道具です。
中でも「データの追加」は最も頻繁に行う操作ですが、一つずつ追加するのか、まとめて追加するのかによって、コードの可読性や効率が大きく変わります。この記事では、基本のaddとaddAllを正しく理解し、現場でスマートなコードを書くための基礎力を身につけましょう。

2. 基礎知識:コレクションとは?

Javaの「コレクション」とは、複数の要素をひとまとめにして管理するための枠組み(フレームワーク)のことです。
代表的なものに、順序を保持する「List」、重複を許さない「Set」があります。
add(E e) メソッドは、コレクションに一つの要素を追加します。
addAll(Collection c) メソッドは、別のコレクションに含まれるすべての要素を、一括で追加します。
これらのメソッドは、Collectionインターフェースで定義されているため、ListやSetなど多くのデータ構造で共通して利用できるのが特徴です。

3. 実装と解決策

データを追加する際、ループを使ってaddを繰り返すのは少し古い書き方です。addAllを使えば、コードを一行で簡潔に記述できます。また、addAllは「既存のリストに新しいリストを結合する」といった操作に非常に強力です。

4. サンプルプログラム

以下のコードをコピーして、動作を確認してみてください。

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class CollectionSample {
public static void main(String[] args) {
// リストの初期化
List fruits = new ArrayList<>();

// 1. add(E): 1つずつ追加する場合
fruits.add(“りんご”);
fruits.add(“みかん”);

// 2. addAll(Collection): まとめて追加する場合
List moreFruits = Arrays.asList(“ぶどう”, “メロン”);
fruits.addAll(moreFruits);

// 結果を表示
// [りんご, みかん, ぶどう, メロン] と出力されます
System.out.println(“現在のリスト: ” + fruits);
}
}

5. 応用・注意点:現場で役立つポイント

最後に、現場でよくある注意点を二つお伝えします。

・変更不可(Immutable)コレクションの落とし穴
Arrays.asList()などで作成したリストは、サイズ変更ができません。これに対してaddAllを実行すると、「UnsupportedOperationException」というエラーが発生します。追加操作を行う場合は、必ず new ArrayList<>(元のリスト) のようにして、変更可能なリストへ変換してから使いましょう。

・重複の扱いに注意
SetにaddAllを使う場合、重複する要素は自動的に無視されます。ListとSetでは「同じメソッドを呼んでも結果が異なる」という性質をしっかり理解しておくことが、バグを未然に防ぐ秘訣です。

まずはこの二つのメソッドを使い分けることから始めて、Javaコレクションマスターを目指しましょう!

コメント

タイトルとURLをコピーしました