C# | Remove a range of elements from the ArrayList - GeeksforGeeks

01 Feb, 2019
ArrayList represents an ordered collection of an object that can be indexed individually. It is basically an alternative to an array. It also allows dynamic memory allocation, adding, searching and sorting items in the list. ArrayList.RemoveRange(Int32, Int32) method is used to remove a range of elements from the ArrayList.
Properties of the ArrayList Class:
Elements can be added or removed from the Array List collection at any point in time.
The ArrayList is not guaranteed to be sorted.
The capacity of an ArrayList is the number of elements the ArrayList can hold.
Elements in this collection can be accessed using an integer index. Indexes in this collection are zero-based.
It also allows duplicate elements.
Using multidimensional arrays as elements in an ArrayList collection is not supported.
Syntax:
public virtual void RemoveRange (int index, int count);

Parameters:
index : It is the zero-based starting index of the range of elements to remove.
count : It is the number of elements which is to be removed.
Exceptions:
ArgumentOutOfRangeException : If index is less than zero or count is less than zero.
ArgumentException : If index and count do not denote a valid range of elements in the ArrayList.
NotSupportedException : If the ArrayList is read-only or the ArrayList has a fixed size.
Note: This method is an O(n) operation, where n is Count.
Below programs illustrate the use of ArrayList.RemoveRange(Int32, Int32) method:
Example 1:
// C# code to remove a range of// elements from the ArrayListusing System;using System.Collections;using System.Collections.Generic;  class GFG {      // Driver code    public static void Main()    {          // Creating an ArrayList        ArrayList myList = new ArrayList(10);          // Adding elements to ArrayList        myList.Add("A");        myList.Add("B");        myList.Add("C");        myList.Add("D");        myList.Add("E");        myList.Add("F");        myList.Add("G");        myList.Add("H");        myList.Add("I");        myList.Add("J");          // Displaying the elements in ArrayList        Console.WriteLine("The initial ArrayList is: ");          foreach(string str in myList)        {            Console.WriteLine(str);        }          // removing 2 elements starting from index 2        myList.RemoveRange(2, 2);          // Displaying the modified ArrayList        Console.WriteLine("The ArrayList after Removing elements: ");          // Displaying the elements in ArrayList        foreach(string str in myList)        {            Console.WriteLine(str);        }    }}
The initial ArrayList is: 
A
B
C
D
E
F
G
H
I
J
The ArrayList after Removing elements: 
A
B
E
F
G
H
I
J

Example 2:
// C# code to remove a range of// elements from the ArrayListusing System;using System.Collections;using System.Collections.Generic;  class GFG {      // Driver code    public static void Main()    {          // Creating an ArrayList        ArrayList myList = new ArrayList(10);          // Adding elements to ArrayList        myList.Add(2);        myList.Add(4);        myList.Add(6);        myList.Add(8);        myList.Add(10);        myList.Add(12);        myList.Add(14);        myList.Add(16);        myList.Add(18);        myList.Add(20);          // Displaying the elements in ArrayList        Console.WriteLine("The initial ArrayList: ");          foreach(int i in myList)        {            Console.WriteLine(i);        }          // removing 4 elements starting from index 0        myList.RemoveRange(0, 4);          // Displaying the modified ArrayList        Console.WriteLine("The ArrayList after Removing elements: ");          // Displaying the elements in ArrayList        foreach(int i in myList)        {            Console.WriteLine(i);        }    }}
The initial ArrayList is: 
2
4
6
8
10
12
14
16
18
20
The ArrayList after Removing elements: 
10
12
14
16
18
20

Reference:
https://docs.microsoft.com/en-us/dotnet/api/system.collections.arraylist.removerange?view=netframework-4.7.2
CSharp-Collections-ArrayList
CSharp-Collections-Namespace
CSharp-method
C#
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
C# Dictionary with examples
C# | Delegates
C# | Method Overriding
C# | Abstract Classes
Difference between Ref and Out keywords in C#
Extension Method in C#
C# | Class and Object
C# | Constructors
C# | Replace() Method
Introduction to .NET Framework