C# | How to remove the element from the specified index of the List
Last Updated :
01 Feb, 2019
List<T>.RemoveAt (Int32) Method is used to remove the element at the specified index of the List<T>.
Properties of List:
- It is different from the arrays. A list can be resized dynamically but arrays cannot.
- List class can accept null as a valid value for reference types and it also allows duplicate elements.
- If the Count becomes equals to Capacity then the capacity of the List increases automatically by reallocating the internal array. The existing elements will be copied to the new array before the addition of the new element.
Syntax:
public void RemoveAt (int index);
Parameters:
index: It is the zero-based starting index of the element which is to be removed.
count: It is the number of the elements which is to be removed.
Exceptions: This method will give ArgumentOutOfRangeException if the index is less than 0 or equal to or greater than Count.
Below programs illustrate the use of List<T>.RemoveAt (Int32) Method:
Example 1:
using System;
using System.Collections;
using System.Collections.Generic;
class Geeks {
public static void Main(String[] args)
{
List< int > firstlist = new List< int >();
firstlist.Add(17);
firstlist.Add(19);
firstlist.Add(21);
firstlist.Add(9);
firstlist.Add(75);
firstlist.Add(19);
firstlist.Add(73);
Console.WriteLine( "Elements Present in List:\n" );
int p = 0;
foreach ( int k in firstlist)
{
Console.Write( "At Position {0}: " , p);
Console.WriteLine(k);
p++;
}
Console.WriteLine( " " );
Console.WriteLine( "Removing the element at index 3\n" );
firstlist.RemoveAt(3);
int p1 = 0;
foreach ( int n in firstlist)
{
Console.Write( "At Position {0}: " , p1);
Console.WriteLine(n);
p1++;
}
}
}
|
Output:
Elements Present in List:
At Position 0: 17
At Position 1: 19
At Position 2: 21
At Position 3: 9
At Position 4: 75
At Position 5: 19
At Position 6: 73
Removing the element at index 3
At Position 0: 17
At Position 1: 19
At Position 2: 21
At Position 3: 75
At Position 4: 19
At Position 5: 73
Example 2:
using System;
using System.Collections;
using System.Collections.Generic;
class Geeks {
public static void Main(String[] args)
{
List< int > firstlist = new List< int >();
firstlist.Add(17);
firstlist.Add(19);
firstlist.Add(21);
firstlist.Add(9);
firstlist.Add(75);
firstlist.Add(19);
firstlist.Add(73);
Console.WriteLine( "Elements Present in List:\n" );
int p = 0;
foreach ( int k in firstlist)
{
Console.Write( "At Position {0}: " , p);
Console.WriteLine(k);
p++;
}
Console.WriteLine( " " );
Console.WriteLine( "Removing the element at index 3\n" );
firstlist.RemoveAt(-1);
int p1 = 0;
foreach ( int n in firstlist)
{
Console.Write( "At Position {0}: " , p1);
Console.WriteLine(n);
p1++;
}
}
}
|
Runtime Error:
Unhandled Exception:
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Output:
Elements Present in List:
At Position 0: 17
At Position 1: 19
At Position 2: 21
At Position 3: 9
At Position 4: 75
At Position 5: 19
At Position 6: 73
Removing the element at index 3
Reference:
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...