[解決済み] C# LINQ リスト内の重複を検索する
2022-02-14 21:22:01
質問
LINQを使用し
List<int>
複数回繰り返される項目とその値を含むリストを取得するにはどうすればよいですか?
どのように解決するのですか?
最も簡単な解決方法は、要素をその値に基づいてグループ化し、グループ内に複数の要素がある場合はその代表者を選ぶことです。LINQでは、このように訳されます。
var query = lst.GroupBy(x => x)
.Where(g => g.Count() > 1)
.Select(y => y.Key)
.ToList();
要素が何回繰り返されるかを知りたい場合は
var query = lst.GroupBy(x => x)
.Where(g => g.Count() > 1)
.Select(y => new { Element = y.Key, Counter = y.Count() })
.ToList();
これは
List
の無名型であり、各要素はプロパティ
Element
と
Counter
で、必要な情報を取得することができます。
そして最後に、探しているのが辞書であれば
var query = lst.GroupBy(x => x)
.Where(g => g.Count() > 1)
.ToDictionary(x => x.Key, y => y.Count());
これは、あなたの要素をキーとし、それが繰り返された回数を値とする辞書を返します。
関連
-
[解決済み] LINQを使用してList<T>から要素を削除する
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] リスト内のアイテムのインデックスを検索する
-
[解決済み] リストが空かどうかを確認するにはどうすればよいですか?
-
[解決済み] 割り当て後にリストが予期せず変更されました。その理由と防止策を教えてください。
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] 特定のプロパティに対するLINQのDistinct()
-
[解決済み] リストに値が存在するかどうかを確認する最速の方法
-
[解決済み] リストの順番を維持したまま、重複を削除するにはどうしたらいいですか?
-
[解決済み】IEnumerable vs List - What to Use? どのように動作するのでしょうか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] C# LINQ リスト内の重複を検索する
-
[解決済み】Entity Framework。このコマンドに関連するオープンなDataReaderがすでに存在します。
-
[解決済み] エンティティフレームワークのLinqクエリInclude()複数の子エンティティ
-
[解決済み] LINQ-to-SQLとストアドプロシージャの比較?[クローズド]
-
[解決済み] LINQ を使用して、オブジェクトのリストから一意のプロパティのリストを取得するにはどうすればよいですか?
-
[解決済み] LINQを使用してデータをPivotすることは可能ですか?
-
[解決済み] LINQを使用してリストから重複する項目を取得する方法は?[重複]する
-
[解決済み] IQueryableとIEnumerableの違いは何ですか[重複]。
-
[解決済み] 指定された型メンバー 'Date' は LINQ to Entities でサポートされていません。イニシャライザ、エンティティ・メンバ、およびエンティティ・ナビゲーション・プロパティのみです。
-
[解決済み] LINQ OrderByとThenByの比較