あるリストから別のリストに存在する項目を削除します
タスクは、汎用リストから反復処理を行い、別のリストに含まれる項目を削除することです。次の仮定のシナリオを考えてみましょう:
<code>List<car> list1 = GetTheList(); List<car> list2 = GetSomeOtherList();</code>
目標は、foreach ループを使用して list1 を反復処理し、list2 にも存在する項目をすべて削除することです。ただし、foreach ループはインデックスベースではないため、タスクが複雑になります。
Except メソッドを使用した解決策
この課題に対処するには、Except メソッドを使用して、あるリストから別のリストに存在する項目を除外します。
<code>List<car> result = list2.Except(list1).ToList();</code>
これにより、list1 に存在しない list2 の項目を含む新しいリスト結果が作成されます。一時変数を削除してコードを簡素化することもできます:
<code>List<car> result = GetSomeOtherList().Except(GetTheList()).ToList();</code>
Except は元のリストを一切変更せずに新しいリストを生成することに注意することが重要です。
以上があるリストから別のリストに存在する項目を効率的に削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。