タイトルが示すように、C# では、この remove メソッドを変更して、配列の最後の項目を取得し、削除された値の代わりに移動しようとしています。このように、要素を削除するときに、個々の番号をすべて取得してスペースを上に移動する必要はありません。
これが私の現在のコードです:
public override void remove(ref T item)
{
if (next == 0)
{
}
else
{
//find value, if it exists
for (int i = 0; i < next; i++)
{
if (item.Equals(list[i]))
{
for (int j = i; j < next; j++) list[j] = list[j + 1];
next--;
break;
}
}
}
}
どんな助けでも大歓迎です。
値を配列に挿入するための私のコードは次のとおりです。
{
UnorderedArrayList<int> u = new UnorderedArrayList<int>();
u.print();
int var = 5;
u.insert(ref var);
var = 12;
u.insert(ref var);
var = 2;
u.insert(ref var);
var = 29;
u.insert(ref var);
u.print();
var = 5;
u.remove(ref var);
u.print();
}