Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
List<T>.Add() / Remove() / Clear()
可変長リストに要素を追加する『Add()』、要素を削除する『Remove()』、すべての要素を削除する『Clear()』メソッドです。
構文
using System.Collections.Generic; // List<T> を作成します。 List<T> リスト = new List<T>(); // 末尾に要素を追加します。 リスト.Add(T item) // 指定した要素を最初に見つかった位置から削除します。削除できた場合は true を返します。 リスト.Remove(T item) // 指定したインデックスの要素を削除します。 リスト.RemoveAt(int index) // すべての要素を削除します。 リスト.Clear()
メソッド一覧
| メソッド | 概要 |
|---|---|
| Add(T item) | リストの末尾に要素を追加します。 |
| AddRange(IEnumerable<T> collection) | コレクションのすべての要素をリストの末尾にまとめて追加します。 |
| Remove(T item) | 指定した値と一致する最初の要素をリストから削除します。削除できれば true を返します。 |
| RemoveAt(int index) | 指定したインデックスの要素を削除します。 |
| Clear() | リストのすべての要素を削除します。Count が 0 になります。 |
サンプルコード
using System;
using System.Collections.Generic;
// List<string> を作成して要素を追加します。
List<string> 果物 = new List<string>();
果物.Add("りんご");
果物.Add("バナナ");
果物.Add("さくらんぼ");
Console.WriteLine(string.Join(", ", 果物)); // りんご, バナナ, さくらんぼ
// AddRange() でまとめて追加します。
string[] 追加分 = { "ぶどう", "もも" };
果物.AddRange(追加分);
Console.WriteLine(string.Join(", ", 果物)); // りんご, バナナ, さくらんぼ, ぶどう, もも
// Remove() で値を指定して削除します。
果物.Remove("バナナ");
Console.WriteLine(string.Join(", ", 果物)); // りんご, さくらんぼ, ぶどう, もも
// RemoveAt() でインデックスを指定して削除します。
果物.RemoveAt(0); // 先頭の「りんご」を削除します。
Console.WriteLine(string.Join(", ", 果物)); // さくらんぼ, ぶどう, もも
// Clear() ですべての要素を削除します。
果物.Clear();
Console.WriteLine(果物.Count); // 0
概要
『List<T>』は C# で最もよく使われるコレクションクラスです。内部的には配列で実装されており、末尾への追加(Add())は高速ですが、途中への挿入・削除は後続要素のシフトが発生するため要素数が多い場合は注意が必要です。
『Remove()』は一致する最初の要素のみ削除します。同じ値が複数ある場合、すべて削除したい場合は RemoveAll() を使用してください。
要素の挿入と要素数の取得には『List<T>.Insert() / Count』を参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。