C# List
C# List is a collection of elements that can be used to store and fetch dynamically.
C# List preserves the index of elements in it.
C# List can have duplicate elements.
In C#, you can access List in System.Collections.Generic.
Initialize C# List
You can declare a C# List and add elements to it.
Example 1 – Initialize List
In this example, we will define a list and then add elements to it, thus initializing the list with some elements.
Program.cs
using System.Collections.Generic;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
var names = new List<string>();
names.Add("Mack");
names.Add("Daisy");
names.Add("Ward");
}
}
}
Example 2 – Initialize List with Values
We can also define a C# list with initial values. In the following example, we will initialize the list during its declaration itself.
Program.cs
using System.Collections.Generic;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
var names = new List<string>() {"Mack", "Daisy", "Ward"};
}
}
}
Print C# List
You can use foreach to print elements in a List.
In this example, we will initialize a list, and print the elements of this list using foreach function.
Program.cs
using System;
using System.Collections.Generic;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
var names = new List<string>() {"Mack", "Daisy", "Ward"};
foreach( var name in names) {
Console.WriteLine(name);
}
}
}
}
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
Mack
Daisy
Ward
Modify C# List
You can use index like in an array to modify the elements of a list.
In the following example, we will initialize a list with some elements, and then modify the element at index 1 with a new value.
Program.cs
using System;
using System.Collections.Generic;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
var names = new List<string>() {"Mack", "Daisy", "Ward"};
names[1] = "Fitz";
foreach( var name in names) {
Console.WriteLine(name);
}
}
}
}
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
Mack
Fitz
Ward
Remove an element from C# List using index
You can use List.RemoveAt(int index)
to remove an element from List using index.
In the following example, we have list of elements, and we will delete the element present at index 1 using RemoveAt() method.
Program.cs
using System;
using System.Collections.Generic;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
var names = new List<string>() {"Mack", "Daisy", "Ward"};
names.RemoveAt(1);
foreach( var name in names) {
Console.WriteLine(name);
}
}
}
}
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
Mack
Ward
Remove an element from C# List using value
You can use List.Remove(object)
to remove the first occurrence of element from List.
In the following example, we will remove the element from List based on value using Remove() method.
Program.cs
using System;
using System.Collections.Generic;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
var names = new List<string>() {"Mack", "Daisy", "Ward"};
names.Remove("Daisy");
foreach( var name in names) {
Console.WriteLine(name);
}
}
}
}
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
Mack
Ward
C# List Length
The property List.Count gives the number of elements in the List.
In the following list, we have a list of strings, and we will count the number of elements in this list using List.Count property.
Program.cs
using System;
using System.Collections.Generic;
namespace CSharpExamples {
class Program {
static void Main(string[] args) {
var names = new List<string>() {"Mack", "Daisy", "Ward"};
int listLength = names.Count;
Console.WriteLine("Length of the list is : "+listLength);
}
}
}
Output
PS D:\workspace\csharp\HelloWorld> dotnet run
Length of the list is : 3
Conclusion
In this C# Tutorial, we learned about C# List, some of the useful methods and properties with well detailed examples.