8

10 個の項目のリストがあるとします。

List<char> chars = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'];

n番目(たとえば、3番目の項目)を除くリスト内のすべての要素を含む新しいリストが必要'C'です。後で必要になるため、元のリストを変更したくありません。

別のオプションは、リストを複製してアイテムを削除することですが、n 番目以降のすべてのアイテムを上に移動する必要があります。

Linq を使用してリストを取得する方法はありますか?

編集:

文字は、リスト内で複数回出現する可能性があります。「n」での出現のみを削除したい。

4

2 に答える 2

0

メソッドを使用できますEnumerable.Where

述語に基づいて一連の値をフィルタリングします。

List<char> chars = new List<char>(){'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'};
var newlist = chars.Where(n => n != chars.ElementAtOrDefault(2));

ここに がありDEMOます。

于 2013-04-15T13:59:59.107 に答える