C# で LinkedList から指定された条件に一致する要素を削除するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/133487

  •  02-07-2019
  •  | 
  •  

質問

LinkedList があり、Entry には id というメンバーがあります。ID が検索値と一致するエントリをリストから削除したいと考えています。これを行うための最良の方法は何ですか?Entry.Equals は他のメンバーを比較し、ID のみで照合したいので、Remove() は使用したくありません。私はこのようなことをしたいと考えています:

entries.RemoveWhereTrue(e => e.id == searchId);

編集:誰かがこの質問をもう一度開いてくれませんか?これは重複ではありません。重複であると考えられる質問は List クラスに関するものです。List.RemoveAll は機能しません。これは List クラスの一部です。

役に立ちましたか?

解決

list.Remove(list.First(e => e.id == searchId));

他のヒント

簡単な解決策は次のとおりです。

list.Remove(list.First((node) => node.id == searchId));

Where 拡張メソッドを使用するだけです。新しいリスト (IIRC) を取得します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top