C#のQueryable Max()メソッドでシーケンスから最大値を取得する方法
C#のLINQに用意されているMax()メソッドを使うと、シーケンス(コレクション)の中から最大値を簡単に取得できます。この記事では、AsQueryable()メソッドでリストをIQueryable型に変換し、Max()メソッドを呼び出して最大要素を求める方法を、サンプルコードと実行結果付きで解説します。
サンプルデータの準備
まず、次のようにlong型のリストを用意します。
List<long> list = new List<long> { 200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800, 2000 };Max()メソッドで最大値を取得する
リスト内の最大の要素を取得するには、以下のようにAsQueryable().Max()を使用します。
list.AsQueryable().Max();
完全なコード例
using System;
using System.Collections.Generic;
using System.Linq;
class Demo {
static void Main() {
List<long> list = new List<long> { 200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800, 2000 };
foreach (long ele in list)
Console.WriteLine(ele);
// 最大値を取得
long max_num = list.AsQueryable().Max();
Console.WriteLine("Largest number = {0}", max_num);
}
}実行結果
200 400 600 800 1000 1200 1400 1600 1800 2000 Largest number = 2000
ポイントまとめ
AsQueryable()は、IEnumerable型のシーケンスをIQueryable型に変換するメソッドです。Max()は、シーケンス内の最大値を返します。- 空のコレクションに対してMax()を呼び出すと例外が発生するため、事前に要素の存在を確認しておくと安全です。
-
C#のlong.Parseメソッドで文字列をlong型に変換する方法
C#では、文字列をlong型(64ビット整数)に変換する際に、long.Parseメソッドを使用します。数値を表す文字列をプログラム内で計算に使いたい場合などに、このメソッドが役立ちます。基本的な使い方まず、変換元となる文字列を用意します。string str = 7864646475767;次に、long.Parseメソッドを使って文字列をlong型に変換します。long res = long.Parse(str);Parseメソッドは、引数として渡された文字列を解析し、対応するlong型の数値を返します。サンプルコード以下は、文字列をlong型に変換してコンソールに出力する完全なコード例で
-
C#のList.AddRangeメソッドとは?使い方をサンプルコードで解説
C#のList.AddRangeメソッドとはList<T>クラスのAddRangeメソッドは、配列や別のリストなど「コレクション全体」に含まれる要素を、既存のリストの末尾へ一括で追加するためのメソッドです。個々の要素をAddメソッドで何度も呼び出して追加する方法と比べると、コードがシンプルになり、可読性も向上します。引数にはIEnumerable<T>型を受け取るため、配列だけでなく他のListやコレクションも指定可能です。基本的な使い方まず、C#でリストを作成し、要素をいくつか追加してみましょう。List<int> list = new List<i