●学校情報

講座一覧・募集状況

学習方法

学習サポート

修了生の評価

受講生の横顔

当学院について

入学相談

入学手続

 

●講座情報

技術者養成講座

プログラミング講座

WEB講座

情報処理試験講座

Excel講座

Access講座

 

●関連コラム

関連コラム

関連用語集

 

logo

 

 

関連用語集

Javaの3大コレクション型「List / Map / Set」ってなに?

Javaのコレクションフレームワークには、List / Map / Setというよく使われる3つの型があります。
それぞれ特徴や用途が異なるので、適切に使い分けることが大切です。

1. List(リスト)

順序あり・重複ありのコレクションです。
配列に似ていますが、サイズが可変で、要素を簡単に追加・削除できます。

import java.util.ArrayList;

ArrayList list = new ArrayList<>();
list.add("Apple");
list.add("Banana");
list.add("Apple");  // 重複OK

System.out.println(list.get(0));      // Apple
System.out.println(list.size());      // 3
    

主な用途

  • 順序が重要なデータの管理
  • 同じ値が複数あってもよいとき

2. Set(セット)

順序なし・重複なしのコレクションです。
同じ値を入れても1つだけ保持されます。
順序は保証されません(保持順に取り出せるとは限らない)。

import java.util.HashSet;

HashSet set = new HashSet<>();
set.add("Apple");
set.add("Banana");
set.add("Apple");  // 2回目は無視される

System.out.println(set.size());       // 2
    

主な用途

  • 重複を避けたいとき(例:一意なユーザー名)
  • 順番にこだわらない一覧

3. Map(マップ)

キーと値のペアでデータを管理します。
キーは重複不可、値は重複OKです。
値を取り出すには、キーを使います。

import java.util.HashMap;

HashMap map = new HashMap<>();
map.put("Apple", 100);
map.put("Banana", 150);
map.put("Apple", 120);  // 上書きされる

System.out.println(map.get("Apple")); // 120
    

主な用途

  • データを「名前と値」「IDと内容」などの形で管理したいとき
  • 検索キーで素早く値を取得したいとき

3つの違いまとめ

特徴 List Set Map
順序 あり なし(順序保証なし) キーにより管理
重複 OK NG(1つだけ保持) キーはNG、値はOK
アクセス方法 インデックス イテレーター等 キー

まとめ

ListSetMapは、それぞれ使い方・特徴・目的が異なります。
データの性質に合わせてコレクションを選ぶことで、効率よく、安全にプログラムを作ることができます!
最初は ArrayListHashMap から使い始めるのがおすすめです。