Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction automatique. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. Informations supplémentaires.
Traduction
Source

Array.ConvertAll<TInput, TOutput>, méthode

Convertit un tableau d'un type en un tableau d'un autre type.

Espace de noms :  System
Assembly :  mscorlib (dans mscorlib.dll)

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

Paramètres de type

TInput

Type des éléments du tableau source.

TOutput

Type des éléments du tableau cible.

Paramètres

array
Type : TInput[]
Array unidimensionnel de base zéro à convertir en un type cible.
converter
Type : System.Converter<TInput, TOutput>
Converter<TInput, TOutput> qui convertit chaque élément d'un type en un autre type.

Valeur de retour

Type : TOutput[]
Tableau du type cible qui contient les éléments convertis du tableau source.

ExceptionCondition
ArgumentNullException

array a la valeur null.

ou

converter a la valeur null.

Le Converter<TInput, TOutput> est le délégué d'une méthode qui convertit un objet en type cible. Les éléments de array sont passés individuellement au Converter<TInput, TOutput>, et les éléments convertis sont enregistrés dans le nouveau tableau.

La source array reste inchangée.

Cette méthode est une opération O(n), où n est le Length de array.

L'exemple de code suivant définit une méthode nommée PointFToPoint qui convertit une structure PointF en une structure Point. L'exemple crée ensuite un tableau de structures PointF, crée un délégué Converter<PointF, Point> (Converter(Of PointF, Point) en Visual Basic) pour représenter la méthode PointFToPoint, puis passe le délégué à la méthode ConvertAll<TInput, TOutput>. La méthode ConvertAll<TInput, TOutput> passe chaque élément de la liste d'entrée à la méthode PointFToPoint et met les éléments convertis dans une nouvelle liste de structures Point. Les deux listes sont affichées.


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

Pris en charge dans : 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (rôle principal du serveur non pris en charge), Windows Server 2008 R2 (rôle principal du serveur pris en charge avec SP1 ou version ultérieure ; Itanium non pris en charge)

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Ajouts de la communauté

AJOUTER
Afficher:
© 2014 Microsoft