カテゴリ: C# 更新日: 2025/12/14

C#のリスト(List型)の基本と操作方法!要素の追加・削除を学ぼう

C#のリスト(List型)の基本と操作方法!要素の追加・削除を学ぼう
C#のリスト(List型)の基本と操作方法!要素の追加・削除を学ぼう

先生と生徒の会話形式で理解しよう

生徒

「C#でたくさんのデータをまとめて扱う方法ってありますか?」

先生

「はい、C#では『リスト(List)』という型を使って、複数のデータをひとつにまとめて管理できますよ。」

生徒

「それってどうやって使うんですか?追加したり消したりもできますか?」

先生

「もちろんです。では、C#のList型の基本から、要素の追加・削除まで一緒に見ていきましょう!」

1. List(リスト)とは?

1. List(リスト)とは?
1. List(リスト)とは?

List(リスト)は、C#で複数のデータ(値)をひとつの入れ物のようにまとめて管理するための便利な道具です。

たとえば、「りんご」「バナナ」「みかん」という3つの果物を1つずつ別々に管理するよりも、リストに入れて管理することで、簡単に扱えるようになります。

リストは、C#の中でもよく使われるコレクション(集まり)です。配列(Array)に似ていますが、リストは後から数を増やしたり減らしたりできる点がとても便利です。

2. List型を使う準備

2. List型を使う準備
2. List型を使う準備

まずは、List型を使うために必要な「using(ユージング)」の命令を書きます。これは、Listを使えるようにするおまじないのようなものです。


using System.Collections.Generic;

これで、List型を使う準備ができました。

3. List型の基本的な作り方

3. List型の基本的な作り方
3. List型の基本的な作り方

リストを作るには、次のように書きます。


List<string> fruits = new List<string>();

ここでは「文字列(string)」を扱うリストを作っています。fruitsという名前のリストを用意しています。

string(ストリング)は文字や文章を表す型で、たとえば「りんご」や「こんにちは」などの言葉を扱います。

4. 要素の追加(Addメソッド)

4. 要素の追加(Addメソッド)
4. 要素の追加(Addメソッド)

リストにデータを追加するときは、Addという操作を使います。


fruits.Add("りんご");
fruits.Add("バナナ");
fruits.Add("みかん");

このようにして、リストに順番に果物を追加できます。

これを実行すると、リストの中身は以下のようになります。


    りんご
    バナナ
    みかん

5. 要素の取り出し(インデックス)

5. 要素の取り出し(インデックス)
5. 要素の取り出し(インデックス)

リストに追加したデータは、インデックスという番号で順番に並んでいます。インデックスは0番から始まります。


Console.WriteLine(fruits[0]); // りんご
Console.WriteLine(fruits[1]); // バナナ

fruits[0]は、リストの最初の要素「りんご」を指します。

6. 要素の削除(Removeメソッド)

6. 要素の削除(Removeメソッド)
6. 要素の削除(Removeメソッド)

リストからデータを削除するには、Removeを使います。


fruits.Remove("バナナ");

この操作で、「バナナ」がリストから消えます。

削除後のリストの中身は以下のようになります。


    りんご
    みかん

7. 要素の数を調べる(Countプロパティ)

7. 要素の数を調べる(Countプロパティ)
7. 要素の数を調べる(Countプロパティ)

リストにいくつデータが入っているかを調べたいときは、Countというプロパティを使います。


Console.WriteLine(fruits.Count);

このコードを実行すると、リストに入っているデータの数が表示されます。


    2

8. Listを使った簡単なプログラム例

8. Listを使った簡単なプログラム例
8. Listを使った簡単なプログラム例

これまで学んだ内容を使って、簡単なC#プログラムを作ってみましょう。


using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<string> fruits = new List<string>();

        fruits.Add("りんご");
        fruits.Add("バナナ");
        fruits.Add("みかん");

        fruits.Remove("バナナ");

        foreach (string fruit in fruits)
        {
            Console.WriteLine(fruit);
        }

        Console.WriteLine("合計:" + fruits.Count + "個");
    }
}

このコードでは、リストに果物を追加し、「バナナ」を削除した後、すべての果物を表示して、最後に合計数を出しています。


    りんご
    みかん
    合計:2個

9. よく使うListの操作

9. よく使うListの操作
9. よく使うListの操作

C#のList型では、以下のような操作もよく使われます。

  • Clear():すべての要素を削除
  • Contains():特定の値があるか確認
  • Insert(index, value):指定した位置に追加
  • RemoveAt(index):指定した位置の要素を削除

fruits.Contains("みかん"); // trueを返す
fruits.Insert(0, "ぶどう"); // 先頭に追加
fruits.RemoveAt(1); // 2番目の要素を削除

このように、リストはとても柔軟にデータを扱うことができます。

まとめ

まとめ
まとめ

C#のList型は、複数のデータを効率よく扱うために欠かせない重要な機能です。配列と似ているようでいて、より柔軟に使える点が初心者にとっても非常に扱いやすく、実践的なプログラムにもすぐに応用できます。要素の追加削除インデックスによるアクセス個数のカウントなど、基本的な操作を習得することで、データの整理や処理がスムーズに行えるようになります。リストは、C#の中でも使用頻度が高く、さまざまな場面で活躍するため、基本をしっかり押さえておくことが大切です。

たとえば、「商品リスト」や「ユーザーの名前一覧」、「ログの履歴」など、順番があり、データの増減があるような情報を取り扱う場面では、List型の力がとても役立ちます。また、AddRemoveCountInsertなど、シンプルなメソッドで操作できるため、直感的に使える点も大きな魅力です。

リストを使った実践プログラム

ここでは、List型の基本操作をすべて取り入れた小さなプログラムを紹介します。


using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<string> todoList = new List<string>();

        // データの追加
        todoList.Add("朝ごはんを食べる");
        todoList.Add("C#の勉強をする");
        todoList.Add("運動する");

        // 特定の位置に追加
        todoList.Insert(1, "洗濯する");

        // 一部削除
        todoList.Remove("運動する");

        // 要素数の表示
        Console.WriteLine("やることリスト(" + todoList.Count + "件):");

        // すべて表示
        foreach (string item in todoList)
        {
            Console.WriteLine("- " + item);
        }

        // 要素が含まれているか確認
        if (todoList.Contains("C#の勉強をする"))
        {
            Console.WriteLine("今日もC#をがんばろう!");
        }
    }
}

このように、C#のList型を使うことで、柔軟かつ簡潔に情報の追加・削除・確認が行えます。初心者の方は、まずはAdd()Remove()から始めて、Insert()Contains()といった応用的なメソッドにも少しずつ慣れていくとよいでしょう。

実際の開発現場でも、List型は非常によく使われています。データベースから取得した結果を一時的に保存したり、複雑なロジックを整理するための構造として用いたりと、用途は多岐にわたります。また、LINQなどの便利な機能と組み合わせることで、さらに強力な使い方も可能になります。

今後C#を学び進めるにあたって、List型をベースにした処理の理解は非常に重要です。「配列よりも柔軟」「順番がある」「データの増減が簡単」といった特徴をしっかり覚えておきましょう。これから扱う他のコレクション(DictionaryやQueueなど)との違いも理解しやすくなります。

先生と生徒の振り返り会話

生徒

「リストって、ただの箱かと思ってたけど、追加も削除もできて、すごく便利ですね!」

先生

「そのとおりです。List型は、日常的な処理でとてもよく使われる機能なんですよ。動的にサイズが変えられるのが魅力です。」

生徒

「たしかに!Addで入れて、Removeで消せて、Countで数もわかるし、もうひと通り使えそうです!」

先生

「素晴らしい理解ですね。あとはInsertやContainsも使えるようになると、もっと柔軟な処理ができるようになりますよ。」

生徒

「じゃあ次は、条件に応じてリストの中身を整理するようなプログラムを作ってみようかな。」

先生

「いいですね!リストは応用の幅が広いので、ぜひ色んな場面で使ってみてくださいね。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

C#のList(リスト)型とは何ですか?初心者にもわかりやすく教えてください。

C#のList型は、複数のデータをまとめて管理できるコレクションの一種です。配列と似ていますが、後から要素の追加や削除が自由にできる点が特徴で、プログラミング初心者にも扱いやすい柔軟な型です。
カテゴリの一覧へ
新着記事
New1
C#
C#のメモリ管理とガーベジコレクションの基礎を理解しよう
New2
C#
C#の参照型と値型の違いを初心者向けにやさしく解説!
New3
C#
C#のクエリ式とメソッド式の書き換え方を完全ガイド!LINQの2つの書き方をマスター
New4
C#
C#の戻り値にタプルを使う方法!複数の値を返すテクニック
人気記事
No.1
Java&Spring記事人気No1
C#
C#で文字列が数値か判定する方法を解説!char.IsDigitやTryParseの基本
No.2
Java&Spring記事人気No2
C#
C#のLINQでOrderByを使った並び替えを完全ガイド!初心者でもわかるソート方法
No.3
Java&Spring記事人気No3
C#
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.4
Java&Spring記事人気No4
C#
C#のrefとoutキーワードとは?引数の参照渡しを理解しよう
No.5
Java&Spring記事人気No5
COBOL
COBOLの数値データ型「PIC 9」の使い方と注意点をやさしく解説!
No.6
Java&Spring記事人気No6
C#
C#の引数と戻り値の基本!値を受け渡し・返す仕組みを理解しよう
No.7
Java&Spring記事人気No7
C#
C#のラムダ式の書き方と構文を初心者向けに完全解説
No.8
Java&Spring記事人気No8
C#
C#で型を調べる方法!GetType()・typeof演算子の違いと使い方