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

C#でリスト(List)を並べ替える方法|Sort()メソッドの使い方を解説

C#でリスト(List)を並べ替えたい場合は、Sort() メソッドを使うだけで簡単にソートできます。この記事では、文字列のリストを昇順に並べ替える基本手順をサンプルコード付きで解説し、あわせて降順ソートの方法も紹介します。

リストの作成

まず、いくつかの値を持つリストを用意します。ここでは、文字列型のリストを使用します。

var cars = new List<string>() {"Mercedes", "Audi", "Jaguar"};

Sort() メソッドで並べ替える

並べ替え(ソート)は、Sort() メソッドを呼び出すだけで完了です。引数を指定しない場合、要素は昇順(アルファベット順・数値の小さい順)に並べ替えられます。

cars.Sort();

サンプルコード

以下は、C#でリストを並べ替える方法を示す完全なサンプルです。ソート前後のリスト内容をそれぞれ表示しています。

using System;
using System.Collections.Generic;

public class Program {
    public static void Main() {
        var cars = new List<string>() {"Mercedes", "Audi", "Jaguar"};

        Console.WriteLine("元のリスト =");
        foreach (var name in cars) {
            Console.WriteLine(name);
        }

        // ソート
        cars.Sort();

        Console.WriteLine("ソート後のリスト =");
        foreach (var name in cars) {
            Console.WriteLine(name);
        }
    }
}

実行結果

元のリスト =
Mercedes
Audi
Jaguar
ソート後のリスト =
Audi
Jaguar
Mercedes

降順で並べ替えたい場合

逆順(降順)に並べ替えたいときは、Sort() の後に Reverse() を呼び出す方法が簡単です。また、LINQ の OrderByDescending() を使えば、元のリストを変更せずに新しい並べ替え済みリストを取得できます。

// Sort + Reverse で降順にする
cars.Sort();
cars.Reverse();

// LINQ を使う場合(元のリストは変更されない)
var sortedDesc = cars.OrderByDescending(x => x).ToList();

まとめ

C#の List<T> を並べ替える基本は Sort() メソッドです。昇順ならそのまま呼び出すだけでよく、降順が必要な場合は Reverse() や LINQ の OrderByDescending() を活用しましょう。

  1. AndroidでListViewを並べ替える方法!Collectionsクラスによるソート実装の手順を解説

    本記事では、AndroidアプリでCollectionsクラスを利用して、ListViewの要素を並べ替え(ソート)する方法を、実際に動作するサンプルコードとともに分かりやすく解説します。 手順1:Android Studioで新規プロジェクトを作成する まず、Android Studioを起動し、メニューから「File」⇒「New Project」を選択して新しいプロジェクトを作成します。必要な設定項目をすべて入力し、プロジェクトをセットアップしてください。 手順2:res/layout/activity_main.xmlにレイアウトを定義する 続いて、以下のコードを res/layout

  2. Androidでスタック(Stack)をソートして表示する方法

    Androidでスタックをソートする方法 このチュートリアルでは、Androidアプリでスタック(Stack)の要素をソートして表示する方法を、実際のコード例とともにステップごとに解説します。 手順1:新規プロジェクトを作成する Android Studioを起動し、メニューから「File」→「New Project」を選択します。必要な項目をすべて入力して、新しいプロジェクトを作成してください。 手順2:レイアウトファイルを編集する res/layout/activity_main.xml に以下のコードを追加します。 <?xml version="1.0" en