Array.ForEach<T>(T[], Action<T>) Metoda

Definice

Provede zadanou akci pro každý prvek určeného pole.Performs the specified action on each element of the specified array.

``````public:
generic <typename T>
static void ForEach(cli::array <T> ^ array, Action<T> ^ action);``````
``public static void ForEach<T> (T[] array, Action<T> action);``
``static member ForEach : 'T[] * Action<'T> -> unit``
``Public Shared Sub ForEach(Of T) (array As T(), action As Action(Of T))``

Parametry typu

T

Typ prvků pole.The type of the elements of the array.

Parametry

array
T[]

Jednorozměrné Array založený na nule, na jejichž prvcích má být akce provedena.The one-dimensional, zero-based Array on whose elements the action is to be performed.

action
Action<T>

Action<T>, který se má provést u každého prvku `array`The Action<T> to perform on each element of `array`.

Výjimky

`array` je `null`.`array` is `null`.

-nebo--or- `action` je `null`.`action` is `null`.

Následující příklad ukazuje, jak použít ForEach k zobrazení čtverců každého prvku v celočíselném poli.The following example shows how to use ForEach to display the squares of each element in an integer array.

``````using namespace System;

public ref class SamplesArray
{
public:
static void Main()
{
// create a three element array of integers
array<int>^ intArray = gcnew array<int> {2, 3, 4};

// set a delegate for the ShowSquares method
Action<int>^ action = gcnew Action<int>(ShowSquares);

Array::ForEach(intArray, action);
}

private:
static void ShowSquares(int val)
{
Console::WriteLine("{0:d} squared = {1:d}", val, val*val);
}
};

int main()
{
SamplesArray::Main();
}

/*
This code produces the following output:

2 squared = 4
3 squared = 9
4 squared = 16
*/

``````
``````using System;

public class SamplesArray
{
public static void Main()
{
// create a three element array of integers
int[] intArray = new int[] {2, 3, 4};

// set a delegate for the ShowSquares method
Action<int> action = new Action<int>(ShowSquares);

Array.ForEach(intArray, action);
}

private static void ShowSquares(int val)
{
Console.WriteLine("{0:d} squared = {1:d}", val, val*val);
}
}

/*
This code produces the following output:

2 squared = 4
3 squared = 9
4 squared = 16
*/

``````
``````Public Class SamplesArray
Public Shared Sub Main()
' create a three element array of integers
Dim intArray() As Integer = New Integer() {2, 3, 4}

' set a delegate for the ShowSquares method
Dim action As New Action(Of Integer)(AddressOf ShowSquares)

Array.ForEach(intArray, action)
End Sub

Private Shared Sub ShowSquares(val As Integer)
Console.WriteLine("{0:d} squared = {1:d}", val, val*val)
End Sub
End Class

' This code produces the following output:
'
' 2 squared = 4
' 3 squared = 9
' 4 squared = 16

``````

Poznámky

Action<T> je delegát pro metodu, která provádí akci u objektu, který je předán do něj.The Action<T> is a delegate to a method that performs an action on the object passed to it. Prvky `array` jsou jednotlivě předány do Action<T>.The elements of `array` are individually passed to the Action<T>.

Tato metoda je operace O (`n`), kde `n` je Length `array`.This method is an O(`n`) operation, where `n` is the Length of `array`.