Skip to content
Related Articles
Get the best out of our app
GeeksforGeeks App
Open App
geeksforgeeks
Browser
Continue

Related Articles

C# | StringCollection Class

Improve Article
Save Article
Like Article
Improve Article
Save Article
Like Article

StringCollection class is a new addition to the .NET Framework class library that represents a collection of strings. StringCollection class is defined in the System.Collections.Specialized namespace.

Characteristics:

  • StringCollection class accepts null as a valid value and allows duplicate elements.
  • String comparisons are case-sensitive.
  • Elements in this collection can be accessed using an integer index.
  • Indexes in this collection are zero-based.

Constructors

ConstructorDescription
StringCollection()Initializes a new instance of the StringCollection class.

Example:




// C# code to create a StringCollection
using System;
using System.Collections;
using System.Collections.Specialized;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // creating a StringCollection named myCol
        StringCollection myCol = new StringCollection();
  
        // Adding elements in StringCollection
        myCol.Add("A");
        myCol.Add("B");
        myCol.Add("C");
        myCol.Add("D");
        myCol.Add("E");
  
        // Displaying objects in myCol
        foreach(Object obj in myCol)
        {
            Console.WriteLine(obj);
        }
    }
}

Output:

A
B
C
D
E

Properties

PropertyDescription
CountGets the number of strings contained in the StringCollection.
IsReadOnlyGets a value indicating whether the StringCollection is read-only.
IsSynchronizedGets a value indicating whether access to the StringCollection is synchronized (thread safe).
Item[Int32]Gets or sets the element at the specified index.
SyncRootGets an object that can be used to synchronize access to the StringCollection.

Example:




// C# code to illustrate the StringCollection
// Class Properties
using System;
using System.Collections;
using System.Collections.Specialized;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // creating a StringCollection named myCol
        StringCollection myCol = new StringCollection();
  
        // creating a string array named myArr
        String[] myArr = new String[] { "A", "B", "C", "D", "E" };
  
        // Copying the elements of a string
        // array to the end of the StringCollection.
        myCol.AddRange(myArr);
  
        // --------- Using IsReadOnly Property ---------
          
        // checking if StringCollection is
        // read-only
        Console.WriteLine(myCol.IsReadOnly);
          
        // --------- Using Count Property ---------
          
        // To get number of Strings contained
        // in the StringCollection
        Console.WriteLine("Number of strings in myCol are : " 
                                              + myCol.Count);
    }
}

Output:

False
Number of strings in myCol are : 5

Methods

MethodDescription
Add(String)Adds a string to the end of the StringCollection.
AddRange(String[])Copies the elements of a string array to the end of the StringCollection.
Clear()Removes all the strings from the StringCollection.
Contains(String)Determines whether the specified string is in the StringCollection.
CopyTo(String[], Int32)Copies the entire StringCollection values to a one-dimensional array of strings, starting at the specified index of the target array.
Equals(Object)Determines whether the specified object is equal to the current object.
GetEnumerator()Returns a StringEnumerator that iterates through the StringCollection.
GetHashCode()Serves as the default hash function.
GetType()Gets the Type of the current instance.
IndexOf(String)Searches for the specified string and returns the zero-based index of the first occurrence within the StringCollection.
Insert(Int32, String)Inserts a string into the StringCollection at the specified index.
MemberwiseClone()Creates a shallow copy of the current Object.
Remove(String)Removes the first occurrence of a specific string from the StringCollection.
RemoveAt(Int32)Removes the string at the specified index of the StringCollection.
ToString()Returns a string that represents the current object.

Example:




// C# code to copy StringCollection to array,
// starting at the specified index of
// the target array
using System;
using System.Collections;
using System.Collections.Specialized;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // creating a StringCollection named myCol
        StringCollection myCol = new StringCollection();
  
        // creating a string array named myArr1
        String[] myArr1 = new String[] { "A", "B", "C", "D", "E" };
  
        // Copying the elements of a string
        // array to the end of the StringCollection.
        myCol.AddRange(myArr1);
  
        // creating a String array named myArr2
        String[] myArr2 = new String[myCol.Count];
  
        // Copying StringCollection to array myArr2
        // starting from index 0
        myCol.CopyTo(myArr2, 0);
  
        // Displaying elements in array myArr2
        for (int i = 0; i < myArr2.Length; i++) {
            Console.WriteLine(myArr2[i]);
        }
    }
}

Output:

A
B
C
D
E

Example:




// C# code to insert a string into
// the StringCollection at the
// specified index
using System;
using System.Collections;
using System.Collections.Specialized;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // creating a StringCollection named myCol
        StringCollection myCol = new StringCollection();
  
        // creating a string array named myArr
        String[] myArr = new String[] { "Hello", "Geeks",
                                        "for", "GeeksforGeeks" };
  
        // Copying the elements of a string
        // array to the end of the StringCollection.
        myCol.AddRange(myArr);
  
        Console.WriteLine("Initially elements in StringCollection are: ");
  
        // Displaying elements in StringCollection
        // named myCol
        foreach(Object obj in myCol)
            Console.WriteLine(obj);
  
        // Removing all the elements from StringCollection
        myCol.Clear();
  
        Console.WriteLine("After Removing: ");
  
        // Displaying elements in StringCollection
        // named myCol
        foreach(Object obj in myCol)
            Console.WriteLine(obj);
    }
}

Output:

Initially elements in StringCollection are: 
Hello
Geeks
for
GeeksforGeeks
After Removing:

Reference:


My Personal Notes arrow_drop_up
Last Updated : 24 Jan, 2019
Like Article
Save Article
Similar Reads