OneBite.Dev - Coding blog in a bite size

Remove A Specific Element From An Array In C#

Code snippet for how to Remove A Specific Element From An Array In C# with sample and detail explanation

Removing a specific element from an array in C# is a common task that programmers often encounter. While C# does not provide a built-in method to do this directly, you can achieve this using various methods, including creating a new array and converting an array to a list.

Code snippet for Removing Specific Element from an Array

To remove a specific element from an array, kindly follow the steps given below. In this scenario, we are going to remove a specific element from an integer array:

int[] numbers = new int[] { 1, 2, 3, 4, 5 };
int numToRemove = 3;

numbers = numbers.Where(val => val != numToRemove).ToArray();

foreach(int number in numbers)
{
    Console.WriteLine(number);
}

After running this code, your console output should be:

1
2
4
5

Code Explanation for Removing Specific Element from an Array

The logic behind removing a specific element from an array in C# is to create a new array that does not include the element you want to remove, rather than directly removing the element from the existing array.

Let’s break down the code:

  • int[] numbers = new int[] { 1, 2, 3, 4, 5 };

Here, we initialize an array of integers with values {1,2,3,4,5}.

  • int numToRemove = 3;

Here, we define the element value that we want to remove from the array.

  • numbers = numbers.Where(val => val != numToRemove).ToArray();

This statement is the core logic of removing the specific element. We are using a LINQ query to filter out the number we want to remove, creating a new array that does not include the desired element.

  • Lastly, we loop through the modified array and print each item to the console using the foreach loop.

The key here is that arrays in C# are immutable in size – that is, once an array is created, you can’t add or remove elements. You can only modify existing elements. Therefore, when you need to add or remove elements in an array, you must create a new array. This is something you should keep in mind while working with arrays in C#.

c-sharp