Enumerable.Prepend<TSource>(IEnumerable<TSource>, TSource) Method

Definition

Aggiunge un valore all'inizio della sequenza.Adds a value to the beginning of the sequence.

public:
generic <typename TSource>
[System::Runtime::CompilerServices::Extension]
 static System::Collections::Generic::IEnumerable<TSource> ^ Prepend(System::Collections::Generic::IEnumerable<TSource> ^ source, TSource element);
public static System.Collections.Generic.IEnumerable<TSource> Prepend<TSource> (this System.Collections.Generic.IEnumerable<TSource> source, TSource element);
static member Prepend : seq<'Source> * 'Source -> seq<'Source>
<Extension()>
Public Function Prepend(Of TSource) (source As IEnumerable(Of TSource), element As TSource) As IEnumerable(Of TSource)

Type Parameters

TSource

Tipo degli elementi di source.The type of the elements of source.

Parameters

source
IEnumerable<TSource>

Sequenza di valori.A sequence of values.

element
TSource

Valore da anteporre a source.The value to prepend to source.

Returns

IEnumerable<TSource>

Nuova sequenza che inizia con element.A new sequence that begins with element.

Exceptions

source è null.source is null.

Examples

Nell'esempio di codice riportato di seguito viene illustrato come utilizzare Prepend per anteporre un valore all'inizio della sequenza.The following code example demonstrates how to use Prepend to prepend a value to the beginning of the sequence.

// Creating a list of numbers
List<int> numbers = new List<int> { 1, 2, 3, 4 };

// Trying to prepend any value of the same type
numbers.Prepend(0);

// It doesn't work because the original list has not been changed
Console.WriteLine(string.Join(", ", numbers));

// It works now because we are using a changed copy of the original list
Console.WriteLine(string.Join(", ", numbers.Prepend(0)));

// If you prefer, you can create a new list explicitly
List<int> newNumbers = numbers.Prepend(0).ToList();

// And then write to the console output
Console.WriteLine(string.Join(", ", newNumbers));

// This code produces the following output:
//
// 1, 2, 3, 4
// 0, 1, 2, 3, 4
// 0, 1, 2, 3, 4
' Creating a list of numbers
Dim numbers As New List(Of Integer)(New Integer() {1, 2, 3, 4})

' Trying to prepend any value of the same type
numbers.Prepend(0)

' It doesn't work because the original list has not been changed
Console.WriteLine(String.Join(", ", numbers))

' It works now because we are using a changed copy of the original list
Console.WriteLine(String.Join(", ", numbers.Prepend(0)))

' If you prefer, you can create a new list explicitly
Dim newNumbers As List(Of Integer) = numbers.Prepend(0).ToList

' And then write to the console output
Console.WriteLine(String.Join(", ", newNumbers))

' This code produces the following output:
'
' 1, 2, 3, 4
' 0, 1, 2, 3, 4
' 0, 1, 2, 3, 4

Remarks

Note

Questo metodo non modifica gli elementi della raccolta.This method does not modify the elements of the collection. Viene invece creata una copia della raccolta con il nuovo elemento.Instead, it creates a copy of the collection with the new element.

Applies to