List<T>.ForEach(Action<T>) Method

Definition

Esegue l'azione specificata su ogni elemento di List<T>.Performs the specified action on each element of the List<T>.

public:
 void ForEach(Action<T> ^ action);
public void ForEach (Action<T> action);
member this.ForEach : Action<'T> -> unit
Public Sub ForEach (action As Action(Of T))

Parameters

action
Action<T>

Delegato Action<T> da eseguire su ogni elemento di List<T>.The Action<T> delegate to perform on each element of the List<T>.

Exceptions

action è null.action is null.

Un elemento nella raccolta è stato modificato.An element in the collection has been modified.

Examples

Nell'esempio seguente viene illustrato l'utilizzo del delegato Action<T> per stampare il contenuto di un oggetto List<T>.The following example demonstrates the use of the Action<T> delegate to print the contents of a List<T> object. In questo esempio viene usato il metodo Print per visualizzare il contenuto dell'elenco nella console.In this example the Print method is used to display the contents of the list to the console.

Note

Oltre a visualizzare il contenuto utilizzando il metodo Print, nell' C# esempio viene illustrato l'utilizzo di metodi anonimi per visualizzare i risultati nella console.In addition to displaying the contents using the Print method, the C# example demonstrates the use of anonymous methods to display the results to the console.

List<String> names = new List<String>();
names.Add("Bruce");
names.Add("Alfred");
names.Add("Tim");
names.Add("Richard");

// Display the contents of the list using the Print method.
names.ForEach(Print);

// The following demonstrates the anonymous method feature of C#
// to display the contents of the list to the console.
names.ForEach(delegate(String name)
{
    Console.WriteLine(name);
});

void Print(string s)
{
    Console.WriteLine(s);
}

/* This code will produce output similar to the following:
* Bruce
* Alfred
* Tim
* Richard
* Bruce
* Alfred
* Tim
* Richard
*/
Imports System.Collections.Generic

Class Program
    Shared Sub Main()
        Dim names As New List(Of String)
        names.Add("Bruce")
        names.Add("Alfred")
        names.Add("Tim")
        names.Add("Richard")

        ' Display the contents of the list using the Print method.
        names.ForEach(AddressOf Print)
    End Sub

    Shared Sub Print(ByVal s As String)
        Console.WriteLine(s)
    End Sub
End Class

' This code will produce output similar to the following:
' Bruce
' Alfred
' Tim
' Richard

Remarks

Il Action<T> è un delegato a un metodo che esegue un'azione sull'oggetto passato.The Action<T> is a delegate to a method that performs an action on the object passed to it. Gli elementi del List<T> corrente vengono passati singolarmente al delegato di Action<T>.The elements of the current List<T> are individually passed to the Action<T> delegate.

Questo metodo è un'operazione O (n), dove n è Count.This method is an O(n) operation, where n is Count.

La modifica della raccolta sottostante nel corpo del Action<T> delegato non è supportata e causa un comportamento non definito.Modifying the underlying collection in the body of the Action<T> delegate is not supported and causes undefined behavior.

Applies to

See also