2011-01-27 19 views
0

私のArrayListには20の要素があるとします。さて、実行時には10要素しか持たないので、他の10個のインデックス(9から19まで)はまったく存在しません。それ、どうやったら出来るの?ArrayListのサイズをカットする方法は?

+0

arraylistを使用しないでください。期間。 –

答えて

2

ArrayListではなくArrayで作業するので、1つの部分にArrayList.Remove()を使用し、範囲に対してArrayList.RemoveRange(x、list.Count-x)を使用するだけです。

1

あなたが存在しない要素のためのメモリ空間を使用しないように探しているなら、あなたはTrimToSize方法で試すことができますが:

http://msdn.microsoft.com/en-us/library/system.collections.arraylist.trimtosize.aspx

それは能力を制限することによって、配列のオーバーヘッドを最小限に抑えることができます現在のアイテムに

既に存在する場合は、それらを削除してから、このメソッドを呼び出す必要があります。

あなたは正確に何を探しているのかわからないので、詳細は素晴らしいでしょう。

3

なぜ非ジェネリックコレクションを使用していますか?代わりにList<T>を使用してください。また、Remove()メソッドを使用することもできます。

関連する問題