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

Definicja

Wykonuje określoną akcję dla każdego elementu określonej tablicy.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 elementów tablicy.The type of the elements of the array.

Parametry

array
T[]

Jednowymiarowe, zależne Array od zera, dla których elementów należy wykonać akcję.The one-dimensional, zero-based Array on whose elements the action is to be performed.

action
Action<T> Action<T> Action<T> Action<T>

Do wykonania na każdym arrayelemencie. Action<T>The Action<T> to perform on each element of array.

Wyjątki

arrayjest null.array is null.

—lub—-or- actionjest null.action is null.

Przykłady

Poniższy przykład pokazuje, jak używać ForEach do wyświetlania kwadratów każdego elementu w tablicy liczb całkowitych.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

Uwagi

Action<T> Jest delegatem do metody, która wykonuje akcję na obiekcie, do którego została przeniesiona.The Action<T> is a delegate to a method that performs an action on the object passed to it. Elementy array są indywidualnie przenoszone Action<T>do.The elements of array are individually passed to the Action<T>.

Ta metoda jest operacją on(), gdzie n jest Length z array.This method is an O(n) operation, where n is the Length of array.

Dotyczy

Zobacz też