Search code examples
c#arraysobject

How to remove an element from an array and resize the array


I want to remove a specific object from an array, put it in a smaller array without getting out of range. This is what I've tried but it won't work.

Skateboard[] newSkateboard = new Skateboard[_skateboards.Length - 1];
for (int i = 0; i < _skateboards.Length; i++)
{
    if (skateboard.Code != _skateboards[i].Code)
    {
        newSkateboard[i] = _skateboards[i];
    }
}

Solution

  • Sure.

        var j = 0;
        for (int i = 0; i < _skateboards.Length; i++)
        {
            if (skateboard.Code != _skateboards[i].Code)
            {
                newSkateboard[j] = _skateboards[i];
                j = j + 1;
            }
        }