Enumerable.Min Método

Definición

Devuelve el valor mínimo de una secuencia de valores.

Sobrecargas

Min(IEnumerable<Nullable<Int64>>)

Devuelve el valor mínimo de una secuencia de valores Int64 que aceptan valores NULL.

Min(IEnumerable<Nullable<Int32>>)

Devuelve el valor mínimo de una secuencia de valores Int32 que aceptan valores NULL.

Min(IEnumerable<Single>)

Devuelve el valor mínimo de una secuencia de valores Single.

Min(IEnumerable<Nullable<Single>>)

Devuelve el valor mínimo de una secuencia de valores Single que aceptan valores NULL.

Min(IEnumerable<Nullable<Double>>)

Devuelve el valor mínimo de una secuencia de valores Double que aceptan valores NULL.

Min(IEnumerable<Decimal>)

Devuelve el valor mínimo de una secuencia de valores Decimal.

Min(IEnumerable<Int64>)

Devuelve el valor mínimo de una secuencia de valores Int64.

Min(IEnumerable<Int32>)

Devuelve el valor mínimo de una secuencia de valores Int32.

Min(IEnumerable<Double>)

Devuelve el valor mínimo de una secuencia de valores Double.

Min(IEnumerable<Nullable<Decimal>>)

Devuelve el valor mínimo de una secuencia de valores Decimal que aceptan valores NULL.

Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

Invoca una función de transformación en cada elemento de una secuencia genérica y devuelve el valor mínimo resultante.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Single mínimo.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Single mínimo que acepta valores NULL.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int64 mínimo que acepta valores NULL.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Double mínimo que acepta valores NULL.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Decimal mínimo que acepta valores NULL.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int32 mínimo que acepta valores NULL.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int32 mínimo.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Double mínimo.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Decimal mínimo.

Min<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Devuelve el valor mínimo de una secuencia genérica.

Min<TSource>(IEnumerable<TSource>)

Devuelve el valor mínimo de una secuencia genérica.

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int64 mínimo.

Min(IEnumerable<Nullable<Int64>>)

Devuelve el valor mínimo de una secuencia de valores Int64 que aceptan valores NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<long> Min(System::Collections::Generic::IEnumerable<Nullable<long>> ^ source);
public static long? Min (this System.Collections.Generic.IEnumerable<long?> source);
static member Min : seq<Nullable<int64>> -> Nullable<int64>
<Extension()>
Public Function Min (source As IEnumerable(Of Nullable(Of Long))) As Nullable(Of Long)

Parámetros

source
IEnumerable<Nullable<Int64>>

Secuencia de valores Int64 que aceptan valores NULL cuyo valor mínimo se va a determinar.

Devoluciones

Nullable<Int64>

Valor de tipo Nullable<Int64> en C# o Nullable(Of Int64) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source es null.

Comentarios

El Min(IEnumerable<Nullable<Int64>>) método usa la Int64 implementación de IComparable<T> para comparar valores.

Si la secuencia de origen está vacía o solo contiene valores que son null, esta función devuelve null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Nullable<Int32>>)

Devuelve el valor mínimo de una secuencia de valores Int32 que aceptan valores NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<int> Min(System::Collections::Generic::IEnumerable<Nullable<int>> ^ source);
public static int? Min (this System.Collections.Generic.IEnumerable<int?> source);
static member Min : seq<Nullable<int>> -> Nullable<int>
<Extension()>
Public Function Min (source As IEnumerable(Of Nullable(Of Integer))) As Nullable(Of Integer)

Parámetros

source
IEnumerable<Nullable<Int32>>

Secuencia de valores Int32 que aceptan valores NULL cuyo valor mínimo se va a determinar.

Devoluciones

Nullable<Int32>

Valor de tipo Nullable<Int32> en C# o Nullable(Of Int32) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min(IEnumerable<Nullable<Int32>>) para determinar el valor mínimo en una secuencia.

int?[] grades = { 78, 92, null, 99, 37, 81 };

int? min = grades.Min();

Console.WriteLine("The lowest grade is {0}.", min);

/*
 This code produces the following output:

 The lowest grade is 37.
*/
Dim grades() As Nullable(Of Integer) = {78, 92, Nothing, 99, 37, 81}
Dim min As Nullable(Of Integer) = grades.Min()

' Display the output.
Console.WriteLine($"The lowest grade is {min}")

' This code produces the following output:
'
' The lowest grade is 37

Comentarios

El Min(IEnumerable<Nullable<Int32>>) método usa la Int32 implementación de IComparable<T> para comparar valores.

Si la secuencia de origen está vacía o solo contiene valores que son null, esta función devuelve null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Single>)

Devuelve el valor mínimo de una secuencia de valores Single.

public:
[System::Runtime::CompilerServices::Extension]
 static float Min(System::Collections::Generic::IEnumerable<float> ^ source);
public static float Min (this System.Collections.Generic.IEnumerable<float> source);
static member Min : seq<single> -> single
<Extension()>
Public Function Min (source As IEnumerable(Of Single)) As Single

Parámetros

source
IEnumerable<Single>

Secuencia de valores Single cuyo valor mínimo se va a determinar.

Devoluciones

Single

El valor mínimo de la secuencia.

Excepciones

source es null.

source no contiene ningún elemento.

Comentarios

El Min(IEnumerable<Single>) método usa la Single implementación de IComparable<T> para comparar valores.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Nullable<Single>>)

Devuelve el valor mínimo de una secuencia de valores Single que aceptan valores NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Min(System::Collections::Generic::IEnumerable<Nullable<float>> ^ source);
public static float? Min (this System.Collections.Generic.IEnumerable<float?> source);
static member Min : seq<Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Min (source As IEnumerable(Of Nullable(Of Single))) As Nullable(Of Single)

Parámetros

source
IEnumerable<Nullable<Single>>

Secuencia de valores Single que aceptan valores NULL cuyo valor mínimo se va a determinar.

Devoluciones

Nullable<Single>

Valor de tipo Nullable<Single> en C# o Nullable(Of Single) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source es null.

Comentarios

El Min(IEnumerable<Nullable<Single>>) método usa la Single implementación de IComparable<T> para comparar valores.

Si la secuencia de origen está vacía o solo contiene valores que son null, esta función devuelve null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Nullable<Double>>)

Devuelve el valor mínimo de una secuencia de valores Double que aceptan valores NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Min(System::Collections::Generic::IEnumerable<Nullable<double>> ^ source);
public static double? Min (this System.Collections.Generic.IEnumerable<double?> source);
static member Min : seq<Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Min (source As IEnumerable(Of Nullable(Of Double))) As Nullable(Of Double)

Parámetros

source
IEnumerable<Nullable<Double>>

Secuencia de valores Double que aceptan valores NULL cuyo valor mínimo se va a determinar.

Devoluciones

Nullable<Double>

Valor de tipo Nullable<Double> en C# o Nullable(Of Double) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source es null.

Comentarios

El Min(IEnumerable<Nullable<Double>>) método usa la Double implementación de IComparable<T> para comparar valores.

Si la secuencia de origen está vacía o solo contiene valores que son null, esta función devuelve null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Decimal>)

Devuelve el valor mínimo de una secuencia de valores Decimal.

public:
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Min(System::Collections::Generic::IEnumerable<System::Decimal> ^ source);
public static decimal Min (this System.Collections.Generic.IEnumerable<decimal> source);
static member Min : seq<decimal> -> decimal
<Extension()>
Public Function Min (source As IEnumerable(Of Decimal)) As Decimal

Parámetros

source
IEnumerable<Decimal>

Secuencia de valores Decimal cuyo valor mínimo se va a determinar.

Devoluciones

Decimal

El valor mínimo de la secuencia.

Excepciones

source es null.

source no contiene ningún elemento.

Comentarios

El Min(IEnumerable<Decimal>) método usa la Decimal implementación de IComparable<T> para comparar valores.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Int64>)

Devuelve el valor mínimo de una secuencia de valores Int64.

public:
[System::Runtime::CompilerServices::Extension]
 static long Min(System::Collections::Generic::IEnumerable<long> ^ source);
public static long Min (this System.Collections.Generic.IEnumerable<long> source);
static member Min : seq<int64> -> int64
<Extension()>
Public Function Min (source As IEnumerable(Of Long)) As Long

Parámetros

source
IEnumerable<Int64>

Secuencia de valores Int64 cuyo valor mínimo se va a determinar.

Devoluciones

Int64

El valor mínimo de la secuencia.

Excepciones

source es null.

source no contiene ningún elemento.

Comentarios

El Min(IEnumerable<Int64>) método usa la Int64 implementación de IComparable<T> para comparar valores.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Int32>)

Devuelve el valor mínimo de una secuencia de valores Int32.

public:
[System::Runtime::CompilerServices::Extension]
 static int Min(System::Collections::Generic::IEnumerable<int> ^ source);
public static int Min (this System.Collections.Generic.IEnumerable<int> source);
static member Min : seq<int> -> int
<Extension()>
Public Function Min (source As IEnumerable(Of Integer)) As Integer

Parámetros

source
IEnumerable<Int32>

Secuencia de valores Int32 cuyo valor mínimo se va a determinar.

Devoluciones

Int32

El valor mínimo de la secuencia.

Excepciones

source es null.

source no contiene ningún elemento.

Comentarios

El Min(IEnumerable<Int32>) método usa la Int32 implementación de IComparable<T> para comparar valores.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Double>)

Devuelve el valor mínimo de una secuencia de valores Double.

public:
[System::Runtime::CompilerServices::Extension]
 static double Min(System::Collections::Generic::IEnumerable<double> ^ source);
public static double Min (this System.Collections.Generic.IEnumerable<double> source);
static member Min : seq<double> -> double
<Extension()>
Public Function Min (source As IEnumerable(Of Double)) As Double

Parámetros

source
IEnumerable<Double>

Secuencia de valores Double cuyo valor mínimo se va a determinar.

Devoluciones

Double

El valor mínimo de la secuencia.

Excepciones

source es null.

source no contiene ningún elemento.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min(IEnumerable<Double>) para determinar el valor mínimo en una secuencia.

double[] doubles = { 1.5E+104, 9E+103, -2E+103 };

double min = doubles.Min();

Console.WriteLine("The smallest number is {0}.", min);

/*
 This code produces the following output:

 The smallest number is -2E+103.
*/
' Create an array of double values.
Dim doubles() As Double = {1.5E+104, 9.0E+103, -2.0E+103}

' Determine the smallest number in the array.
Dim min As Double = doubles.Min()

' Display the result.
Console.WriteLine($"The smallest number is {min}")

' This code produces the following output:
'
' The smallest number is -2E+103

Comentarios

El Min(IEnumerable<Double>) método usa la Double implementación de IComparable<T> para comparar valores.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min(IEnumerable<Nullable<Decimal>>)

Devuelve el valor mínimo de una secuencia de valores Decimal que aceptan valores NULL.

public:
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Min(System::Collections::Generic::IEnumerable<Nullable<System::Decimal>> ^ source);
public static decimal? Min (this System.Collections.Generic.IEnumerable<decimal?> source);
static member Min : seq<Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Min (source As IEnumerable(Of Nullable(Of Decimal))) As Nullable(Of Decimal)

Parámetros

source
IEnumerable<Nullable<Decimal>>

Secuencia de valores Decimal que aceptan valores NULL cuyo valor mínimo se va a determinar.

Devoluciones

Nullable<Decimal>

Valor de tipo Nullable<Decimal> en C# o Nullable(Of Decimal) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source es null.

Comentarios

El Min(IEnumerable<Nullable<Decimal>>) método usa la Decimal implementación de IComparable<T> para comparar valores.

Si la secuencia de origen está vacía o solo contiene valores que son null, esta función devuelve null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource,TResult>(IEnumerable<TSource>, Func<TSource,TResult>)

Invoca una función de transformación en cada elemento de una secuencia genérica y devuelve el valor mínimo resultante.

public:
generic <typename TSource, typename TResult>
[System::Runtime::CompilerServices::Extension]
 static TResult Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, TResult> ^ selector);
public static TResult Min<TSource,TResult> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TResult> selector);
public static TResult? Min<TSource,TResult> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,TResult> selector);
static member Min : seq<'Source> * Func<'Source, 'Result> -> 'Result
<Extension()>
Public Function Min(Of TSource, TResult) (source As IEnumerable(Of TSource), selector As Func(Of TSource, TResult)) As TResult

Parámetros de tipo

TSource

Tipo de los elementos de source.

TResult

Tipo de valor devuelto por selector.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,TResult>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

TResult

El valor mínimo de la secuencia.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

Si type TResult implementa IComparable<T>, este método usa esa implementación para comparar valores. De lo contrario, si el tipo TResult implementa IComparable, esa implementación se usa para comparar valores.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Single mínimo.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static float Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, float> ^ selector);
public static float Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float> selector);
static member Min : seq<'Source> * Func<'Source, single> -> single
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Single)) As Single

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Single>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Single

El valor mínimo de la secuencia.

Excepciones

source o selector es null.

source no contiene ningún elemento.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Single>) método usa la Single implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Single.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Single mínimo que acepta valores NULL.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<float> Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<float>> ^ selector);
public static float? Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,float?> selector);
static member Min : seq<'Source> * Func<'Source, Nullable<single>> -> Nullable<single>
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Single))) As Nullable(Of Single)

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Nullable<Single>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Nullable<Single>

Valor de tipo Nullable<Single> en C# o Nullable(Of Single) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Single>>) método usa la Single implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Single> en C# o Nullable(Of Single) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int64 mínimo que acepta valores NULL.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<long> Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<long>> ^ selector);
public static long? Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long?> selector);
static member Min : seq<'Source> * Func<'Source, Nullable<int64>> -> Nullable<int64>
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Long))) As Nullable(Of Long)

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Nullable<Int64>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Nullable<Int64>

Valor de tipo Nullable<Int64> en C# o Nullable(Of Int64) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int64>>) método usa la Int64 implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Int64> en C# o Nullable(Of Int64) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Double mínimo que acepta valores NULL.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<double> Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<double>> ^ selector);
public static double? Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double?> selector);
static member Min : seq<'Source> * Func<'Source, Nullable<double>> -> Nullable<double>
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Double))) As Nullable(Of Double)

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Nullable<Double>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Nullable<Double>

Valor de tipo Nullable<Double> en C# o Nullable(Of Double) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Double>>) método usa la Double implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Double> en C# o Nullable(Of Double) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Decimal mínimo que acepta valores NULL.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<System::Decimal> Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<System::Decimal>> ^ selector);
public static decimal? Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal?> selector);
static member Min : seq<'Source> * Func<'Source, Nullable<decimal>> -> Nullable<decimal>
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Decimal))) As Nullable(Of Decimal)

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Nullable<Decimal>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Nullable<Decimal>

Valor de tipo Nullable<Decimal> en C# o Nullable(Of Decimal) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Decimal>>) método usa la Decimal implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Nullable<Decimal> en C# o Nullable(Of Decimal) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int32 mínimo que acepta valores NULL.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static Nullable<int> Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, Nullable<int>> ^ selector);
public static int? Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int?> selector);
static member Min : seq<'Source> * Func<'Source, Nullable<int>> -> Nullable<int>
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Nullable(Of Integer))) As Nullable(Of Integer)

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Nullable<Int32>>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Nullable<Int32>

Valor de tipo Nullable<Int32> en C# o Nullable(Of Int32) en Visual Basic que corresponde al valor mínimo de la secuencia.

Excepciones

source o selector es null.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Nullable<Int32>>) método usa la Int32 implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros del origen en un tipo numérico, específicamente Nullable<Int32> en C# o Nullable(Of Int32) en Visual Basic.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int32 mínimo.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static int Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, int> ^ selector);
public static int Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,int> selector);
static member Min : seq<'Source> * Func<'Source, int> -> int
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Integer)) As Integer

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Int32>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Int32

El valor mínimo de la secuencia.

Excepciones

source o selector es null.

source no contiene ningún elemento.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) método usa la Int32 implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Int32.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Double mínimo.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static double Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, double> ^ selector);
public static double Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,double> selector);
static member Min : seq<'Source> * Func<'Source, double> -> double
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Double)) As Double

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Double>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Double

El valor mínimo de la secuencia.

Excepciones

source o selector es null.

source no contiene ningún elemento.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Double>) método usa la Double implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Double.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Decimal mínimo.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static System::Decimal Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, System::Decimal> ^ selector);
public static decimal Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,decimal> selector);
static member Min : seq<'Source> * Func<'Source, decimal> -> decimal
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Decimal)) As Decimal

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Decimal>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Decimal

El valor mínimo de la secuencia.

Excepciones

source o selector es null.

source no contiene ningún elemento.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Decimal>) método usa la Decimal implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Decimal.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, IComparer<TSource>)

Devuelve el valor mínimo de una secuencia genérica.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Min(System::Collections::Generic::IEnumerable<TSource> ^ source, System::Collections::Generic::IComparer<TSource> ^ comparer);
public static TSource? Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, System.Collections.Generic.IComparer<TSource>? comparer);
static member Min : seq<'Source> * System.Collections.Generic.IComparer<'Source> -> 'Source
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), comparer As IComparer(Of TSource)) As TSource

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

comparer
IComparer<TSource>

IComparer<T> que va a comparar los valores.

Devoluciones

TSource

El valor mínimo de la secuencia.

Excepciones

source es null.

Ningún objeto de source implementa la interfaz IComparable o IComparable<T>.

Comentarios

Si el tipo TSource implementa IComparable<T>, el Max<TSource>(IEnumerable<TSource>) método usa esa implementación para comparar valores. De lo contrario, si el tipo TSource implementa IComparable, esa implementación se usa para comparar valores.

Si TSource es un tipo de referencia y la secuencia de origen está vacía o solo contiene valores que son null, este método devuelve null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Se aplica a

Min<TSource>(IEnumerable<TSource>)

Devuelve el valor mínimo de una secuencia genérica.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static TSource Min(System::Collections::Generic::IEnumerable<TSource> ^ source);
public static TSource Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);
public static TSource? Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source);
static member Min : seq<'Source> -> 'Source
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource)) As TSource

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

Devoluciones

TSource

El valor mínimo de la secuencia.

Excepciones

source es null.

Ningún objeto de source implementa la interfaz IComparable o IComparable<T>.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>) para determinar el valor mínimo en una secuencia de IComparable<T> objetos .

/// <summary>
/// This class implements IComparable in order to
/// be able to compare different Pet objects.
/// </summary>
class Pet : IComparable<Pet>
{
    public string Name { get; set; }
    public int Age { get; set; }

    /// <summary>
    /// Compares this Pet's age to another Pet's age.
    /// </summary>
    /// <param name="other">The Pet to compare this Pet to.</param>
    /// <returns>-1 if this Pet's age is smaller,
    /// 0 if the Pets' ages are equal, or
    /// 1 if this Pet's age is greater.</returns>
    int IComparable<Pet>.CompareTo(Pet other)
    {
        if (other.Age > this.Age)
            return -1;
        else if (other.Age == this.Age)
            return 0;
        else
            return 1;
    }
}

public static void MinEx3()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    Pet min = pets.Min();

    Console.WriteLine(
        "The 'minimum' animal is {0}.",
        min.Name);
}

/*
 This code produces the following output:

 The 'minimum' animal is Whiskers.
*/
' This class implements IComparable 
' and has a custom 'CompareTo' implementation.
Class Pet
    Implements IComparable(Of Pet)

    Public Name As String
    Public Age As Integer

    ''' <summary>
    ''' Compares this Pet's age to another Pet's age.
    ''' </summary>
    ''' <param name="other">The Pet to compare this Pet to.</param>
    ''' <returns>-1 if this Pet's age is smaller,
    ''' 0 if the Pets' ages are equal,
    ''' or 1 if this Pet's age is greater.</returns>
    Function CompareTo(ByVal other As Pet) As Integer _
    Implements IComparable(Of Pet).CompareTo

        If (other.Age > Me.Age) Then
            Return -1
        ElseIf (other.Age = Me.Age) Then
            Return 0
        Else
            Return 1
        End If
    End Function
End Class

Sub MinEx3()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Determine the "minimum" pet in the array,
    ' according to the custom CompareTo() implementation.
    Dim min As Pet = pets.Min()

    ' Display the result.
    Console.WriteLine($"The 'minimum' pet is {min.Name}")
End Sub

' This code produces the following output:
'
' The 'minimum' pet is Whiskers

Comentarios

Si type TSource implementa IComparable<T>, este método usa esa implementación para comparar valores. De lo contrario, si el tipo TSource implementa IComparable, esa implementación se usa para comparar valores.

Si TSource es un tipo de referencia y la secuencia de origen está vacía o solo contiene valores que son null, esta función devuelve null.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a

Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>)

Invoca una función de transformación en cada elemento de una secuencia y devuelve el valor Int64 mínimo.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static long Min(System::Collections::Generic::IEnumerable<TSource> ^ source, Func<TSource, long> ^ selector);
public static long Min<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, Func<TSource,long> selector);
static member Min : seq<'Source> * Func<'Source, int64> -> int64
<Extension()>
Public Function Min(Of TSource) (source As IEnumerable(Of TSource), selector As Func(Of TSource, Long)) As Long

Parámetros de tipo

TSource

Tipo de los elementos de source.

Parámetros

source
IEnumerable<TSource>

Secuencia de valores cuyo valor mínimo se va a determinar.

selector
Func<TSource,Int64>

Función de transformación que se va a aplicar a cada elemento.

Devoluciones

Int64

El valor mínimo de la secuencia.

Excepciones

source o selector es null.

source no contiene ningún elemento.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar Min<TSource>(IEnumerable<TSource>, Func<TSource,Int32>) para determinar el valor mínimo en una secuencia de valores proyectados.

Nota

En este ejemplo de código se usa una sobrecarga del método diferente de la sobrecarga específica que describe este artículo. Para ampliar el ejemplo a la sobrecarga que describe este artículo, cambie el cuerpo de la selector función.

class Pet
{
    public string Name { get; set; }
    public int Age { get; set; }
}

public static void MinEx4()
{
    Pet[] pets = { new Pet { Name="Barley", Age=8 },
                   new Pet { Name="Boots", Age=4 },
                   new Pet { Name="Whiskers", Age=1 } };

    int min = pets.Min(pet => pet.Age);

    Console.WriteLine("The youngest animal is age {0}.", min);
}

/*
 This code produces the following output:

 The youngest animal is age 1.
*/
Structure Pet
    Public Name As String
    Public Age As Integer
End Structure

Sub MinEx4()
    ' Create an array of Pet objects.
    Dim pets() As Pet = {New Pet With {.Name = "Barley", .Age = 8},
                     New Pet With {.Name = "Boots", .Age = 4},
                     New Pet With {.Name = "Whiskers", .Age = 1}}

    ' Find the youngest pet by passing a 
    ' lambda expression to the Min() method.
    Dim min As Integer = pets.Min(Function(pet) pet.Age)

    ' Display the result.
    Console.WriteLine($"The youngest pet is age {min}")
End Sub

' This code produces the following output:
'
' The youngest pet is age 1

Comentarios

El Min<TSource>(IEnumerable<TSource>, Func<TSource,Int64>) método usa la Int64 implementación de IComparable<T> para comparar valores.

Puede aplicar este método a una secuencia de valores arbitrarios si proporciona una función, selector, que proyecta los miembros de source en un tipo numérico, específicamente Int64.

En la sintaxis de la expresión de consulta de Visual Basic, una Aggregate Into Min() cláusula se traduce en una invocación de Min.

Consulte también

Se aplica a