Array.ConvertAll<TInput,TOutput> メソッド

定義

ある型の配列を別の型の配列に変換します。

``````public:
generic <typename TInput, typename TOutput>
static cli::array <TOutput> ^ ConvertAll(cli::array <TInput> ^ array, Converter<TInput, TOutput> ^ converter);``````
``public static TOutput[] ConvertAll<TInput,TOutput> (TInput[] array, Converter<TInput,TOutput> converter);``
``static member ConvertAll : 'Input[] * Converter<'Input, 'Output> -> 'Output[]``
``Public Shared Function ConvertAll(Of TInput, TOutput) (array As TInput(), converter As Converter(Of TInput, TOutput)) As TOutput()``

TInput

TOutput

パラメーター

array
TInput[]

converter
Converter<TInput,TOutput>

TOutput[]

例外

`array``null`です。

または

`converter``null`です。

例

``````#using <System.Drawing.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::Collections::Generic;

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

void main()
{
// Create an array of PointF objects.
array<PointF>^ apf = {
PointF(27.8F, 32.62F),
PointF(99.3F, 147.273F),
PointF(7.5F, 1412.2F) };

// Display each element in the PointF array.
Console::WriteLine();
for each(PointF p in apf)
{
Console::WriteLine(p);
}

// Convert each PointF element to a Point object.
array<Point>^ ap =
Array::ConvertAll(apf,
gcnew Converter<PointF, Point>(PointFToPoint)
);

// Display each element in the Point array.
Console::WriteLine();
for each(Point p in ap)
{
Console::WriteLine(p);
}
}

/* 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}
*/
``````
``````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}
*/
``````
``````open System
open System.Drawing
open System.Collections.Generic

let pointFToPoint (pf: PointF) =
Point(int pf.X, int pf.Y)

// Create an array of PointF objects.
let apf =
[| PointF(27.8f, 32.62f)
PointF(99.3f, 147.273f)
PointF(7.5f, 1412.2f) |]

// Display each element in the PointF array.
printfn ""
for p in apf do
printfn \$"{p}"

// Convert each PointF element to a Point object.
let ap = Array.ConvertAll(apf, pointFToPoint)
// let ap = Array.map pointFToPoint apf

// Display each element in the Point array.
printfn ""
for p in ap do
printfn \$"{p}"

// 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}
``````
``````Imports System.Drawing
Imports System.Collections.Generic

Public Class Example
Public Shared Sub Main()
' Create an array of PointF objects.
Dim apf() As PointF = { _
New PointF(27.8, 32.62), _
New PointF(99.3, 147.273), _
New PointF(7.5, 1412.2)  }

' Display each element in the PointF array.
Console.WriteLine()
For Each p As PointF In apf
Console.WriteLine(p)
Next

' Convert each PointF element to a Point object.
Dim ap() As Point = Array.ConvertAll(apf, _

' Display each element in the Point array.
Console.WriteLine()
For Each p As Point In ap
Console.WriteLine(p)
Next
End Sub

Public Shared Function PointFToPoint(ByVal pf As PointF) _
As Point

Return New Point(CInt(pf.X), CInt(pf.Y))
End Function
End Class
' The example produces the following output:
'       {X=27.8, Y=32.62}
'       {X=99.3, Y=147.273}
'       {X=7.5, Y=1412.2}
'
'       {X=28,Y=33}
'       {X=99,Y=147}
'       {X=8,Y=1412}
``````

注釈

オブジェクト Converter<TInput,TOutput> をターゲット型に変換するメソッドへのデリゲートです。 の `array` 要素は個別に渡され Converter<TInput,TOutput>、変換された要素は新しい配列に保存されます。

ソース `array` は変更されません。

このメソッドは O(`n`) 演算で、次`n``array`値を指定しますLength

F# では、 通常、代わりに Array.map 関数が使用されます。