ConvertAll(TOutput) Método (Converter(T, TOutput))
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

List<T>.ConvertAll<TOutput> (Método) (Converter<T, TOutput>)

 

Convierte en otro tipo los elementos incluidos en la List<T> actual y devuelve una lista que contiene los elementos convertidos.

Espacio de nombres:   System.Collections.Generic
Ensamblado:  mscorlib (en mscorlib.dll)

public List<TOutput> ConvertAll<TOutput>(
	Converter<T, TOutput> converter
)

Parámetros

converter

Delegado Converter<TInput, TOutput> que convierte cada elemento de un tipo en otro tipo.

Valor devuelto

Type: System.Collections.Generic.List<TOutput>

List<T> del tipo de destino que contiene los elementos convertidos de la List<T> actual.

Parámetros de tipo

TOutput

Tipo de los elementos de la matriz de destino.

Exception Condition
ArgumentNullException

El valor de converter es null.

El Converter<TInput, TOutput> es un delegado a un método que convierte un objeto en el tipo de destino.Los elementos de la corriente List<T> se pasan individualmente a la Converter<TInput, TOutput> delegado y los elementos convertidos se guardan en la nueva List<T>.

Actual List<T> permanece sin cambios.

Este método es una E/s (n) operación, donde n es Count.

En el ejemplo siguiente se define un método denominado PointFToPoint que convierte un PointF estructura a un Point estructura.El ejemplo se crea un List<T> de PointF estructuras, crea un Converter<PointF, Point> delegar (Converter(Of PointF, Point) en Visual Basic) para representar la PointFToPoint (método) y pasa el delegado a la ConvertAll<TOutput> (método).El ConvertAll<TOutput> método pasa cada elemento de la lista de entrada a la PointFToPoint método y coloca los elementos convertidos en una nueva lista de Point estructuras.Se muestran ambas listas.

using System;
using System.Drawing;
using System.Collections.Generic;

public class Example
{
    public static void Main()
    {
        List<PointF> lpf = new List<PointF>();

        lpf.Add(new PointF(27.8F, 32.62F));
        lpf.Add(new PointF(99.3F, 147.273F));
        lpf.Add(new PointF(7.5F, 1412.2F));

        Console.WriteLine();
        foreach( PointF p in lpf )
        {
            Console.WriteLine(p);
        }

        List<Point> lp = lpf.ConvertAll( 
            new Converter<PointF, Point>(PointFToPoint));

        Console.WriteLine();
        foreach( Point p in lp )
        {
            Console.WriteLine(p);
        }
    }

    public static Point PointFToPoint(PointF pf)
    {
        return new Point(((int) pf.X), ((int) pf.Y));
    }
}

/* This code example produces the following output:

{X=27.8, Y=32.62}
{X=99.3, Y=147.273}
{X=7.5, Y=1412.2}

{X=27,Y=32}
{X=99,Y=147}
{X=7,Y=1412}
 */

.NET Framework
Disponible desde 2.0
Volver al principio
Mostrar:
© 2016 Microsoft