C# | Creating an ArrayList having specified initial capacity

ArrayList(Int32) constructor is used to initialize a new instance of the ArrayList class which will be empty and will have the specified initial capacity. 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.

Syntax: public ArrayList (int capacity);

Here, capacity is the number of elements that the new list can initially store.

Exception: This will give ArgumentOutOfRangeException if the capacity is less than zero.

Important Points:

  • The number of elements that an ArrayList can hold is known as the Capacity of the ArrayList. If the elements will be added to the ArrayList then capacity will be automatically increased by reallocating the internal array.
  • Specifying the initial capacity will eliminate the requirement to perform a number of resizing operations while adding elements to the ArrayList if the size of the collection can be estimated.
  • This constructor is an O(n) operation, where n is capacity.

Below programs illustrate the use of above-discussed constructor:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# Program to illustrate how
// to create a ArrayList having
// specified initial capacity
using System;
using System.Collections;
  
class Geeks {
  
    // Main Method
    public static void Main(String[] args)
    {
  
        // arrlist is the ArrayList object
        // ArrayList(10) is the constructor
        // used to initializes a new
        // instance of the ArrayList class
        // having 10 as capacity
        ArrayList arrlist = new ArrayList(10);
  
        Console.Write("Number of elements: ");
          
        // Count property is used to get the
        // number of elements in ArrayList
        // It will give 0 as no elements 
        // are present
        Console.WriteLine(arrlist.Count);
  
        Console.Write("Capacity of ArrayList: ");
          
        // using capacity property
        Console.WriteLine(arrlist.Capacity);
          
        // inserting elements to ArrayList
        arrlist.Add("C");
        arrlist.Add("C++");
        arrlist.Add("Java");
        arrlist.Add("C#");
          
        Console.Write("Number of elements: ");
          
        // Count property is used to get the
        // number of elements in ArrayList
        Console.WriteLine(arrlist.Count);
  
        Console.Write("Capacity of ArrayList: ");
          
        // using capacity property
        Console.WriteLine(arrlist.Capacity);
    }
}

chevron_right


Output:

Number of elements: 0
Capacity of ArrayList: 10
Number of elements: 4
Capacity of ArrayList: 10

Example 2: For ArgumentOutOfRangeException

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# Program to illustrate how
// to create a ArrayList having
// specified initial capacity
using System;
using System.Collections;
  
class Geeks {
  
    // Main Method
    public static void Main(String[] args)
    {
  
        // arrlist is the ArrayList object
        // taking capacity less than zero
        ArrayList arrlist = new ArrayList(-4);
  
        // using capacity property
        Console.WriteLine(arrlist.Capacity);
    }
}

chevron_right


Runtime Error:

Unhandled Exception:
System.ArgumentOutOfRangeException: ‘capacity’ must be non-negative.
Parameter name: capacity

Reference:



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.