Ask Learn
Preview
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign inThis browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
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)
The type of the elements of source
.
A sequence of values.
The value to prepend to source
.
A new sequence that begins with element
.
source
is null
.
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
Note
This method does not modify the elements of the collection. Instead, it creates a copy of the collection with the new element.
Product | Versions |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10 |
.NET Framework | 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 1.6, 2.0, 2.1 |
.NET feedback
.NET is an open source project. Select a link to provide feedback:
Ask Learn is an AI assistant that can answer questions, clarify concepts, and define terms using trusted Microsoft documentation.
Please sign in to use Ask Learn.
Sign in