C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#でListから空の文字列を削除する方法を解説

C#のList<string>に空の文字列が含まれている場合、それらを削除したい場面はよくあります。本記事では、RemoveAtメソッドを使って、インデックスを指定して空の文字列要素を削除する基本的な方法を解説します。

空の文字列を含むリストを作成する

まず、空の文字列を要素として持つリストを作成しましょう。

List<string> myList = new List<string>() {
    " ",
    " ",
    " "
};

このリストには、空の文字列が3つ格納されています。

RemoveAtメソッドで要素を削除する

RemoveAtメソッドを使用すると、インデックス番号を指定して特定の位置にある要素を削除できます。ここでは、先頭(インデックス0)の空の要素を1つ削除してみます。

myList.RemoveAt(0);

RemoveAt(0)と記述することで、リストの最初の要素が削除され、残りの要素は自動的に前に詰められます。

完全なサンプルコード

以下に、リストの作成から要素の削除、結果の表示までの一連の流れを示す完全なプログラムを紹介します。

using System;
using System.Collections.Generic;
using System.Linq;

class Program {
    static void Main() {
        List<string> myList = new List<string>() {
            " ",
            " ",
            " "
        };

        Console.Write("初期状態のリスト(空の文字列を含む)...\n");
        foreach (string list in myList) {
            Console.WriteLine(list);
        }

        Console.Write("リストから空の要素を削除します...\n");
        myList.RemoveAt(0);

        foreach (string list in myList) {
            Console.WriteLine(list);
        }
        Console.WriteLine("上記が空の要素を1つ削除した後のリストです...");
    }
}

実行結果

初期状態のリスト(空の文字列を含む)...



リストから空の要素を削除します...


上記が空の要素を1つ削除した後のリストです...

補足:すべての空の文字列を一括で削除するには

複数の空の文字列をまとめて削除したい場合は、LINQのWhereメソッドとRemoveAllを組み合わせる方法が便利です。

myList.RemoveAll(string.IsNullOrWhiteSpace);

このコードを実行すると、空白のみの文字列やnullを含むすべての空の要素が一括で削除されます。条件に応じて使い分けるとよいでしょう。

  1. OutlookからBoxbe待機リストを削除する方法【完全ガイド】

    Outlookなどの人気メールサービスの上で動作するサードパーティ製サービスは数多く存在します。「メールヘルパーサービス」とも呼ばれるこれらのサービスは、使い勝手と生産性の両面で大きな改善をもたらします。中でもBoxbeは、メールが過多になっている状況に悩むユーザー向けに自動応答サービスを提供するツールです。本記事では、Microsoft OutlookからBoxbe待機リストを完全に削除する方法をわかりやすく解説します。 Boxbe待機リストとは何か Boxbeは、メールプロバイダーとユーザーの間に立つ仲介役として機能します。そのため、あなた宛てに送信されたすべてのメールは、まず「待機リスト

  2. Pythonでリストからオブジェクトを削除する方法|remove・del・popの違いと使い分け

    Pythonでリストからオブジェクト(要素)を削除するには、主にremove()・del・pop()という3つの方法があります。それぞれ挙動が異なるため、目的に応じて使い分けることが重要です。 1. remove():値を指定して削除する remove()メソッドは、引数に指定した値に一致する最初の要素をリストから削除します。インデックスではなく値そのものを指定する点が特徴です。 使用例 a = [3, 2, 3, 2] a.remove(3) print(a) 実行結果 [2, 3, 2] この例では、最初に出現する「3」だけが削除され、2つ目の「3」はそのまま残ります。また、リスト