How to find an item in a C# List

The Contains method checks if the specified item is already exists in the List. The following code snippet checks if an item is already exits.  

if (AuthorList.Contains("Mahesh Chand"))
    AuthorList.Remove("Mahesh Chand");

The IndexOf method returns the first index of an item if found in the List.

int idx = AuthorList.IndexOf("Nipun Tomar");

The LastIndexOf method returns the last index of an item if found in the List. 

idx = AuthorList.LastIndexOf("Mahesh Chand");

The following code snippet shows how to use the Contains, the IndexOf and the LastIndexOf methods. 

List<string> AuthorList = new List<string>();
AuthorList.Add("Mahesh Chand");
AuthorList.Add("Praveen Kumar");
AuthorList.Add("Raj Kumar");
AuthorList.Add("Nipun Tomar");
AuthorList.Add("Mahesh Chand");
AuthorList.Add("Dinesh Beniwal");
            
// Contains - Check if an item is in the list  
if (AuthorList.Contains("Mahesh Chand")) 
{
    Console.WriteLine("Author found!");
}        

// Find an item and replace it with new item
int idx = AuthorList.IndexOf("Nipun Tomar");
if (idx >= 0)
{
    AuthorList[idx] = "New Author";
}
Console.WriteLine("\nIndexOf ");
foreach (var author in AuthorList)
{
    Console.WriteLine(author);
}


// Find Last index of             
idx = AuthorList.LastIndexOf("Mahesh Chand");
if (idx >= 0)
{
    AuthorList[idx] = "New Mahesh";
}
Console.WriteLine("\nLastIndexOf ");
foreach (var author in AuthorList)
{
    Console.WriteLine(author);
}

Download Free book: Programming List with C#