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

Array.ConvertAll<TInput, TOutput> (Método) (TInput[], Converter<TInput, TOutput>)

 

Convierte una matriz de un tipo en una matriz de otro tipo.

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

public static TOutput[] ConvertAll<TInput, TOutput>(
	TInput[] array,
	Converter<TInput, TOutput> converter
)

Parámetros

array

Matriz Array unidimensional de base cero que se va a convertir en el tipo de destino.

converter

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

Valor devuelto

Type: TOutput[]

Matriz del tipo de destino que contiene los elementos convertidos de la matriz de origen.

Parámetros de tipo

TInput

Tipo de los elementos de la matriz de origen.

TOutput

Tipo de los elementos de la matriz de destino.

Exception Condition
ArgumentNullException

El valor de array es null.

-o-

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 array se pasan individualmente a la Converter<TInput, TOutput>, y los elementos convertidos se guardan en la nueva matriz.

El origen de array permanece sin cambios.

Este método es una E/s (n) operación, donde n es el Length de array.

En el ejemplo de código siguiente se define un método denominado PointFToPoint que convierte un PointF estructura a un Point estructura.A continuación se crea una matriz de PointF estructuras, crea un Converter<PointF, Point> delegar (Converter(Of PointF, Point) en Visual Basic) para representar el PointFToPoint (método) y pasa el delegado para el ConvertAll<TInput, TOutput> (método).El ConvertAll<TInput, 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()
    {
        // Create an array of PointF objects.
        PointF[] apf = {
            new PointF(27.8F, 32.62F),
            new PointF(99.3F, 147.273F),
            new PointF(7.5F, 1412.2F) };

        // Display each element in the PointF array.
        Console.WriteLine();
        foreach( PointF p in apf )
            Console.WriteLine(p);

        // Convert each PointF element to a Point object.
        Point[] ap = Array.ConvertAll(apf, 
            new Converter<PointF, Point>(PointFToPoint));

        // Display each element in the Point array.
        Console.WriteLine();
        foreach( Point p in ap )
        {
            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: