月ノ書

JavaのListの使い方を基礎から理解する配列との違いも理解

この記事でわかること
  • JavaにおけるListの役割がわかる
  • 配列とListの違いを整理して理解できる
  • Listの基本的な使い方を学べる
  • 要素の追加・取得・削除の方法がわかる
  • ループと組み合わせた実践的な使い方を理解できる

Listとは何か

Listは、複数のデータを順番に管理できるコレクションの一つです
配列と同じく複数の値を扱えますが、Listは要素数を自由に増減できるという大きな特徴があります

たとえば、あとからデータが増える可能性がある場合、配列よりもListの方が向いています

配列とListの違い

まずは配列との違いを整理しておくと理解しやすくなります

項目配列List
要素数固定可変
要素の追加不可可能
型の指定必要必要(ジェネリクス)
代表的な実装なしArrayList など

要素数が変わるかどうかが、配列とListを使い分ける大きなポイントです

Listを使う準備

Listはインターフェースなので、実際には ArrayList などのクラスを使います

import java.util.ArrayList
import java.util.List

List<String> names = new ArrayList<>()

<String> の部分は、Listに入れる型を指定しています

要素を追加する

Listでは add メソッドで簡単に要素を追加できます

names.add("鈴木")
names.add("山田")
names.add("田中")
インデックス
0優花
1花音
2さくら

追加した順番でインデックスが割り当てられます

要素を取得・変更する

要素の取得には get、変更には set を使います

System.out.println(names.get(0))

names.set(1, "佐藤")
操作説明
get(index)指定位置の要素を取得
set(index, value)要素を置き換え

要素を削除する

削除には remove を使います

names.remove(0)

インデックスが詰められる点には注意が必要です

Listのサイズを取得する

要素数は size で取得できます

System.out.println(names.size())
項目配列List
要素数取得lengthsize()

この違いはよく混乱しやすいので、しっかり覚えておくと安心です

ループとListの組み合わせ

Listもループと相性がとても良いです

for文を使う場合

for (int i = 0; i < names.size(); i++) {
    System.out.println(names.get(i))
}

拡張for文を使う場合

for (String name : names) {
    System.out.println(name)
}
書き方特徴
通常for文インデックスが使える
拡張for文シンプルで読みやすい

Listを使うときの注意点

基本型を使いたい場合は Integer などのラッパークラスを使います

まとめ

Listは、要素数が変化するデータを扱うときにとても便利な仕組みです
配列との違いを理解し、addgetremovesize といった基本操作を押さえることで、実用的なコードが書けるようになります
ループと組み合わせて使うことで、Listの扱いやすさを実感できるはずです

学習進捗