カテゴリ: VB.NET 更新日: 2026/04/09

VB.NETのList(Of T)入門!初心者でもできる柔軟なデータ管理方法

VB.NETのリスト(List(Of T))を使った柔軟なデータ管理方法
VB.NETのリスト(List(Of T))を使った柔軟なデータ管理方法

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

生徒

「先生、VB.NETでたくさんのデータを保存するとき、配列以外に何か便利な方法はありますか?」

先生

「ありますよ。配列のほかに、List(Of T)(リスト)という便利なデータ型があります。配列よりも柔軟にデータを追加したり削除したりできるんです。」

生徒

「リストって何ですか?配列とどう違うんですか?」

先生

「リストは、データの集合を扱える点では配列と似ていますが、あとから自由に増やしたり減らしたりできる点が大きな違いです。配列は固定長ですが、リストは可変長なんですよ。」

1. VB.NETのList(Of T)とは?

1. VB.NETのList(Of T)とは?
1. VB.NETのList(Of T)とは?

VB.NETのList(Of T)は、複数のデータをまとめて管理するためのコレクションの一種です。ここでいうコレクションとは「データの集まり」を意味します。リストは配列と似ていますが、配列と違って大きさをあらかじめ決める必要がなく、必要に応じてデータを追加したり削除したりできます。

例えば、学校のクラスの生徒名簿をイメージしてみてください。配列は「最初に30人分の枠を確保しておく」イメージですが、リストは「最初は空っぽの名簿を用意して、必要なときに生徒を追加していく」イメージです。途中で転校生が来ても簡単に追加できるし、退学する生徒がいれば削除もできます。

2. List(Of T)の基本的な使い方

2. List(Of T)の基本的な使い方
2. List(Of T)の基本的な使い方

VB.NETでリストを使うには、まず次のように宣言します。


Dim numbers As New List(Of Integer)()

この例では、整数(Integer)を扱うリストを作成しています。Of Integerの部分が「このリストには整数を入れる」という意味になります。他にも文字列ならList(Of String)、小数ならList(Of Double)というふうに使えます。

3. データの追加と表示

3. データの追加と表示
3. データの追加と表示

リストにデータを追加するにはAddメソッドを使います。実際にサンプルコードを見てみましょう。


Dim fruits As New List(Of String)()
fruits.Add("りんご")
fruits.Add("みかん")
fruits.Add("ぶどう")

For Each fruit As String In fruits
    Console.WriteLine(fruit)
Next

このコードを実行すると、次のように表示されます。


りんご
みかん
ぶどう

リストに追加した順番で取り出されるのがわかります。

4. データの削除

4. データの削除
4. データの削除

リストの便利なところは、不要になったデータを簡単に削除できることです。例えば、「みかん」を削除してみましょう。


fruits.Remove("みかん")

For Each fruit As String In fruits
    Console.WriteLine(fruit)
Next

実行結果は次のようになります。


りんご
ぶどう

Removeを使うと、指定したデータを簡単に削除できます。

5. データへのアクセス

5. データへのアクセス
5. データへのアクセス

リストに入っている特定のデータを取り出したいときは、インデックス番号(番号は0から始まります)を使います。


Console.WriteLine(fruits(0)) ' りんごが表示される
Console.WriteLine(fruits(1)) ' ぶどうが表示される

配列と同じように、番号を指定してデータを取り出せます。

6. リストの特徴と便利な操作

6. リストの特徴と便利な操作
6. リストの特徴と便利な操作

リストには、よく使われる便利な機能がいくつかあります。

  • Countプロパティでデータの数を調べられる
  • Containsメソッドで指定したデータが含まれているか確認できる
  • Clearメソッドでリストを空にできる

Console.WriteLine(fruits.Count)        ' データの数を表示
Console.WriteLine(fruits.Contains("りんご")) ' Trueが表示される
fruits.Clear()                          ' リストを空にする

7. 配列とリストの違い

7. 配列とリストの違い
7. 配列とリストの違い

最後に、配列とリストの違いを整理しておきましょう。

項目 配列(Array) リスト(List(Of T))
サイズ 最初に決めたら変更できない 自由に追加や削除ができる
操作のしやすさ 基本的 便利なメソッドが多い
使いやすさ シンプル 柔軟で初心者にも扱いやすい

このように、柔軟にデータを扱いたいときはリストを使うのがおすすめです。配列は決まった数のデータを扱うときに便利ですが、リストは「あとから増えるかもしれない」「削除することもある」といった場面で非常に役立ちます。

まとめ

まとめ
まとめ

VB.NETのList(Of T)は、柔軟にデータを扱える強力なコレクションであり、配列では対応しづらい「後からデータが増える」「途中のデータを削除する」「特定の要素を検索する」といった操作を簡単に実現できる点が大きな特徴です。プログラム開発では、入力フォームで登録されるユーザーデータ、商品リスト、ログ履歴、可変長のメッセージデータなど、プロジェクトの仕様変更や運用中のデータ増加に対応することが求められるケースが多く存在します。このような場面で固定長の配列を使うと拡張性が乏しく管理が複雑になる一方、List(Of T)を使えば、追加・削除・検索などの操作が簡潔なコードで実装でき、プログラム全体の保守性を向上させることができます。 配列とリストの違いを整理すると、配列は固定の要素数を前提にしたデータ管理に向いているのに対し、リストは動的要素数を扱う用途に最適です。配列は明確なサイズが決まっているデータ処理に便利で、メモリ効率や処理速度を重視した場面で有利になる場合もあります。一方のList(Of T)は、AddRemoveContainsCountといった便利なメソッドを備え、コードの記述量を減らしながら柔軟性を高めてくれるため、初心者にとっても扱いやすく実務でも頻繁に利用されます。 また、List(Of T)はジェネリック型のため、整数・文字列・クラスを含む独自型など幅広いデータ型に対応できます。たとえば商品クラス・ユーザー情報クラス・データベースから取得したレコードの一覧などもリストに格納できるため、現実世界のデータ管理に非常に近い構造で扱える点も大きな利点です。オブジェクト指向の学習を進める上でも、リストを活用してデータのまとまりを整理することは重要な技術となります。 以下は、今回の学習内容を総合的に確認できるサンプルプログラムで、データの追加・削除・検索・表示・メソッド化までを一連で確認できる例です。

まとめサンプルコード:商品リスト管理プログラム


Class Product
    Public Property Name As String
    Public Property Price As Integer

    Public Sub New(n As String, p As Integer)
        Name = n
        Price = p
    End Sub
End Class

Dim products As New List(Of Product)()

' データの追加
products.Add(New Product("りんご", 120))
products.Add(New Product("みかん", 80))
products.Add(New Product("ぶどう", 300))

' データ表示
For Each p As Product In products
    Console.WriteLine(p.Name & " : " & p.Price & "円")
Next

' データ検索
If products.Any(Function(p) p.Name = "みかん") Then
    Console.WriteLine("みかんはリストに含まれています")
End If

' データ削除
products.RemoveAll(Function(p) p.Name = "みかん")

Console.WriteLine("削除後の商品一覧")
For Each p As Product In products
    Console.WriteLine(p.Name)
Next
先生と生徒の振り返り会話

生徒

「今日の内容で、配列とリストの違いがよく分かりました!データが増える可能性があるときはList(Of T)のほうが便利なんですね。」

先生

「その通りです。リストは実践的なアプリ開発でもよく使われます。特に検索、追加、削除が頻繁にある場合はリストが向いています。」

生徒

「しかもジェネリックなので、商品クラスみたいな複雑なデータもまとめられるのが良いですね!」

先生

「そうです。オブジェクト指向と組み合わせると、より本格的なデータ管理ができるようになります。次はリストを使った検索処理や並び替えにも挑戦してみましょう。」

生徒

「はい!次は並び替えやフィルタリングも試してみます!」

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

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

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

VB.NETのList(Of T)とはどのようなものですか?初心者向けに分かりやすく教えてください。

VB.NETのList(Of T)は、複数のデータをまとめて効率的に管理するための「コレクション」と呼ばれる仕組みの一種です。プログラミング初心者が最初につまずきやすい「データの集まり」を扱う際に、非常に柔軟に対応できるのが特徴です。イメージとしては、中身を自由に入れ替えたり、後からノートのページを付け足したりできるルーズリーフのような名簿だと考えると分かりやすいでしょう。データの追加、削除、検索が簡単に行えるため、実務のシステム開発でも頻繁に利用される非常に重要なデータ型です。
カテゴリの一覧へ
新着記事
New1
VB.NET
VB.NETの変数とは?初心者向けに定義方法とよく使うデータ型を解説
New2
ASP.NET
ASP.NET MVCでモデルを定義してデータを扱う方法を初心者向けに解説
New3
ASP.NET
ASP.NETのマイグレーションを使ったスキーマ管理方法を完全解説!初心者でも安心
New4
ASP.NET
MacでASP.NET開発を始める方法|初心者向けにVisual Studioと.NET SDKを解説
人気記事
No.1
Java&Spring記事人気No1
ASP.NET
ASP.NETとは?初心者向けにできることと特徴をやさしく解説
No.2
Java&Spring記事人気No2
ASP.NET
ASP.NET WebFormsとは?基本概念と仕組みを初心者向けにやさしく解説
No.3
Java&Spring記事人気No3
VB.NET
VB.NETで日付を文字列に変換!ToStringやFormatの使い方を徹底解説
No.4
Java&Spring記事人気No4
VB.NET
VB.NETプログラムの書き方を基礎から学ぼう!初心者が覚えるべき文法とは?
No.5
Java&Spring記事人気No5
VB.NET
VB.NETで日付を加算・減算する方法を完全ガイド!AddDaysやAddMonthsの使い方
No.6
Java&Spring記事人気No6
VB.NET
VB.NETの配列(Array)の作り方と基本操作を徹底解説!初心者でもわかる入門ガイド
No.7
Java&Spring記事人気No7
VB.NET
VB.NETで日付と時間を比較・計算する方法!CompareとSubtractを完全解説
No.8
Java&Spring記事人気No8
ASP.NET
ASP.NET MVCのフォーム送信とPOSTデータの受け取り方を完全解説!初心者でもわかる入力処理の基本