Remove
& RemoveAt
in はどう違いListBox
ますか?
2 に答える
まず第一に、 がある場合、ListBox listBox;
メソッドlistBox
または はありませRemove
んRemoveAt
。listBox.Items.Remove(...)
またはになりますlistBox.Items.RemoveAt(...)
。ここでは in を使用していると仮定しListBox
ますSystem.Windows.Forms
。
Remove
ここで、との違いはRemoveAt
、リストから削除するアイテムを取得するのに対し、インデックスを取得することです。
より明確にするために、List<int> list = new List<int>(new int[] { 10, 20, 30, 40 });
. C# ではすべてがゼロベースであるため、インデックス 0 のリスト10
の値は 、インデックス 1 の値は20
などです。
List
s は s と同じようにandメソッドObjectCollection
を持っています。単純なリストの場合、呼び出すと、リスト内で最初に見つかった が削除されます。が削除されてからの要素になります。Remove
RemoveAt
list.Remove(20);
20
list
{ 10, 30, 40 }
20
を呼び出す代わりに を呼び出すとRemove
、リストに対して同じことが行われます。インデックスのリストの要素を削除しています: この場合、.list
list.RemoveAt(1);
1
20