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

C#のQueryable Min()メソッドでシーケンスから最小値を取得する方法

C#では、Min()メソッドを使うことで、シーケンス(コレクション)の中から最小値を簡単に取得できます。本記事では、AsQueryable()と組み合わせて使えるQueryable版のMin()メソッドの使い方を、サンプルコード付きでわかりやすく解説します。

サンプルリストの準備

まず、最小値を求める対象となるリストを用意します。ここではlong型の数値が格納されたリストを使用します。

List<long> list = new List<long> { 1, 2, 3, 4, 5, 6 };

Queryable Min()メソッドの基本的な使い方

リストに対してAsQueryable()を呼び出してIQueryable<T>に変換し、そこへMin()メソッドを適用すると、シーケンス内の最小要素を取得できます。

list.AsQueryable().Min();

完全なサンプルコード

以下は、リストの内容を表示した後、Min()メソッドで最小値を取得して出力する完全なプログラム例です。

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

class Demo {
    static void Main() {
        List<long> list = new List<long> { 1, 2, 3, 4, 5, 6 };

        Console.WriteLine("リストの要素:");
        foreach(long ele in list) {
            Console.WriteLine(ele);
        }

        // 最小値を取得
        long min_num = list.AsQueryable().Min();
        Console.WriteLine("最小値 = {0}", min_num);
    }
}

実行結果

リストの要素:
1
2
3
4
5
6
最小値 = 1

ポイント解説

  • Min()メソッドは、IQueryable<T>IEnumerable<T>の各要素を比較し、最も小さい値を返します。
  • AsQueryable()を使用することで、通常のLINQ to ObjectsのコレクションをIQueryable<T>として扱えるようになります。
  • 空のシーケンスに対してMin()を呼び出すと例外が発生するため、事前に要素の存在チェックを行うのが安全です。
  1. C#のlong.Parseメソッドで文字列をlong型に変換する方法

    C#では、文字列をlong型(64ビット整数)に変換する際に、long.Parseメソッドを使用します。数値を表す文字列をプログラム内で計算に使いたい場合などに、このメソッドが役立ちます。基本的な使い方まず、変換元となる文字列を用意します。string str = 7864646475767;次に、long.Parseメソッドを使って文字列をlong型に変換します。long res = long.Parse(str);Parseメソッドは、引数として渡された文字列を解析し、対応するlong型の数値を返します。サンプルコード以下は、文字列をlong型に変換してコンソールに出力する完全なコード例で

  2. C#のList.AddRangeメソッドとは?使い方をサンプルコードで解説

    C#のList.AddRangeメソッドとはList<T>クラスのAddRangeメソッドは、配列や別のリストなど「コレクション全体」に含まれる要素を、既存のリストの末尾へ一括で追加するためのメソッドです。個々の要素をAddメソッドで何度も呼び出して追加する方法と比べると、コードがシンプルになり、可読性も向上します。引数にはIEnumerable<T>型を受け取るため、配列だけでなく他のListやコレクションも指定可能です。基本的な使い方まず、C#でリストを作成し、要素をいくつか追加してみましょう。List<int> list = new List<i