📅  最后修改于: 2023-12-03 15:32:39.354000             🧑  作者: Mango
LINQ Min() 函数用于获取集合中的最小值。它需要一个数字类型的序列作为输入,并返回序列中的最小值。
以下是 LINQ Min() 函数的语法:
public static int Min<TSource>(this IEnumerable<TSource> source, Func<TSource,int> selector);
public static long Min<TSource>(this IEnumerable<TSource> source, Func<TSource,long> selector);
public static float Min<TSource>(this IEnumerable<TSource> source, Func<TSource,float> selector);
public static double Min<TSource>(this IEnumerable<TSource> source, Func<TSource,double> selector);
public static decimal Min<TSource>(this IEnumerable<TSource> source, Func<TSource,decimal> selector);
public static Nullable<int> Min<TSource>(this IEnumerable<TSource> source, Func<TSource,Nullable<int>> selector);
public static Nullable<long> Min<TSource>(this IEnumerable<TSource> source, Func<TSource,Nullable<long>> selector);
public static Nullable<float> Min<TSource>(this IEnumerable<TSource> source, Func<TSource,Nullable<float>> selector);
public static Nullable<double> Min<TSource>(this IEnumerable<TSource> source, Func<TSource,Nullable<double>> selector);
public static Nullable<decimal> Min<TSource>(this IEnumerable<TSource> source, Func<TSource,Nullable<decimal>> selector);
参数说明:
Min() 函数返回一个与指定的类型相同的值。如果序列为空,则抛出InvalidOperationException异常。
以下示例演示了如何使用 Min() 函数。假设我们有一个包含整数的序列,我们想找到其中的最小值:
int[] numbers = { 1, 2, 3, 4, 5 };
int minNumber = numbers.Min();
Console.WriteLine("The minimum number is: " + minNumber);
输出结果:
The minimum number is: 1
在上面的示例中,我们使用了 Min() 函数来获取 numbers 序列的最小值。最小值为 1,因此输出结果为 "The minimum number is: 1"。
我们还可以使用 selector 参数来比较序列中的其他属性或条件。例如,我们有以下 Student 类:
class Student
{
public string Name { get; set; }
public int Age { get; set; }
}
我们有一个包含 Student 对象的序列。现在我们想找到其中年龄最小的学生:
List<Student> students = new List<Student>()
{
new Student() { Name = "Alice", Age = 18 },
new Student() { Name = "Bob", Age = 20 },
new Student() { Name = "Charlie", Age = 17 }
};
int minAge = students.Min(s => s.Age);
Console.WriteLine("The minimum age is: " + minAge);
输出结果:
The minimum age is: 17
在上面的示例中,我们使用了 Min() 函数和 selector 参数来获取序列中 Age 属性的最小值。最小值为 17,因此输出结果为 "The minimum age is: 17"。
LINQ Min() 函数非常适合在需要在序列中查找最小值时使用。它可以接受数字类型的序列作为输入,并返回序列中的最小值。通过 selector 参数,我们可以比较序列中的其他属性或条件。