Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Método Enumerable.Max<TSource, TResult>(IEnumerable<TSource>, Func<TSource, TResult>)

 

Publicado: octubre de 2016

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

Espacio de nombres:   System.Linq
Ensamblado:  System.Core (en System.Core.dll)

public static TResult Max<TSource, TResult>(
	this IEnumerable<TSource> source,
	Func<TSource, TResult> selector
)

Parámetros

source
Type: System.Collections.Generic.IEnumerable<TSource>

Secuencia de valores cuyo valor máximo se va a determinar.

selector
Type: System.Func<TSource, TResult>

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

Valor devuelto

Type: TResult

El valor máximo de la secuencia.

Parámetros de tipo

TSource

Tipo de los elementos de source.

TResult

Tipo de valor devuelto por selector.

Exception Condition
ArgumentNullException

El valor de source o selector es null.

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

En Visual Basic sintaxis de expresiones de consulta un Aggregate Into Max() cláusula se convierte en una invocación de Max.

En el ejemplo de código siguiente se muestra cómo utilizar Max<TSource>(IEnumerable<TSource>, Func<TSource, Int32>) para determinar el valor máximo de una secuencia de valores proyectados.

System_CAPS_noteNota

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

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

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

    int max = pets.Max(pet => pet.Age + pet.Name.Length);

    Console.WriteLine(
        "The maximum pet age plus name length is {0}.",
        max);
}

/*
 This code produces the following output:

 The maximum pet age plus name length is 14.
*/

Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 3.5
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Silverlight
Disponible desde 2.0
Windows Phone Silverlight
Disponible desde 7.0
Windows Phone
Disponible desde 8.1
Volver al principio
Mostrar: