Я не могу удалить один и тот же объект из массива в c#. Последний не удаляется.
Я добавляю объекты в массив, я добавляю их более одного раза.
Когда я пытаюсь удалить их, удаляются не все объекты.
Как удалить все одинаковые объекты.
static void Main(string[] args)
{
Cirkel c1 = new Cirkel(2);
Cirkel c2 = new Cirkel(3);
Figuur f1 = new Figuur();
f1.Add(c1);
f1.Add(c1);
f1.Add(c2);
f1.Add(c2);
f1.VerwijderObject(c2);
}
class Figuur
{
public Figuur[] _Items = new Figuur[0];
int count = 0;
public void Add(Figuur figuur)
{
count = count + 1;
Array.Resize(ref _Items, count);
_Items[count - 1] = figuur;
}
public void VerwijderObject(Figuur figuur)
{
for (int k = 0; k < _Items.Length; k++)
{
if (_Items[k].Equals(figuur))
{
for (int i = k; i < (count - 1); i++)
{
_Items[i] = _Items[i + 1];
}
count = count - 1;
Array.Resize(ref _Items, count);
}
}
}
}