C# | Searching the index of specified object in Collection<T>

Collection<T>.IndexOf(T) method is used to search for the specified object and returns the zero-based index of the first occurrence within the entire Collection<T>.

Syntax:

public int IndexOf (T item);

Here, item is the object to locate in the List<T>. The value can be null for reference types.

Return Value: This method returns the zero-based index of the first occurrence of item within the entire Collection<T>, if found, otherwise, -1.

Below given are some examples to understand the implementation in a better way:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# code to search for the specified
// object and returns the zero-based
// index of the first occurrence within
// the entire Collection
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
        // Creating a collection of strings
        Collection<string> myColl = new Collection<string>();
  
        // Adding elements in Collection myColl
        myColl.Add("A");
        myColl.Add("B");
        myColl.Add("C");
        myColl.Add("D");
        myColl.Add("D");
        myColl.Add("E");
  
        // Displaying the elements in myColl
        foreach(string str in myColl)
        {
            Console.WriteLine(str);
        }
  
        // Searching for the specified object
        // and returns the zero-based index of
        // the first occurrence within the entire
        // Collection. If the object doesn't contain the
        // object, then -1 is returned
        Console.WriteLine("Index : " + myColl.IndexOf("D"));
    }
}

chevron_right


Output:

A
B
C
D
D
E
Index : 3

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# code to search for the specified
// object and returns the zero-based
// index of the first occurrence within
// the entire Collection
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
        // Creating a collection of ints
        Collection<int> myColl = new Collection<int>();
  
        // Adding elements in Collection myColl
        myColl.Add(2);
        myColl.Add(3);
        myColl.Add(4);
        myColl.Add(5);
  
        // Displaying the elements in myColl
        foreach(int i in myColl)
        {
            Console.WriteLine(i);
        }
  
        // Searching for the specified object
        // and returns the zero-based index of
        // the first occurrence within the entire
        // Collection. If the object doesn't contain the
        // object, then -1 is returned
        Console.WriteLine("Index : " + myColl.IndexOf(7));
    }
}

chevron_right


Output:

2
3
4
5
Index : -1

Note:

  • The Collection<T> is searched forward starting at the first element and ending at the last element.
  • This method determines equality using the default equality comparer EqualityComparer<T>.Default for T, the type of values in the list.
  • This method performs a linear search. Therefore, this method is an O(n) operation, where n is Count.

Reference:



My Personal Notes arrow_drop_up

In love with a semicolon because sometimes i miss it so badly)

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.