LINQのFirstOrDefaultでKeyValuePairが存在するかどうかをチェックする
2023-09-01 02:03:56
質問
の辞書を持っています。
Dictionary<Guid,int>
を使って、ある条件を満たした最初のインスタンスを返したい。
var available = m_AvailableDict.FirstOrDefault(p => p.Value == 0)
しかし、実際にKeyValuePairが返ってくるかどうかは、どのように確認すればよいのでしょうか?default(KeyValuePair)に対して!=や==を使ってチェックしても、コンパイラーエラーにならないようです。 似たようなスレッドがあります ここに がありますが、これは解決策を持っていないようです。私は実際にキーを取得し、Guidのデフォルトをチェックすることによって私の特定の問題を解決することができますが、私はkeyvaluepairでこれを行うための良い方法があるかどうかを知りたいと思っています。ありがとうございます。
どのように解決するのですか?
存在だけを重視するのであれば
ContainsValue(0)
あるいは
Any(p => p.Value == 0)
で検索するのですか?で検索すると
値
は珍しく
Dictionary<,>
キーで検索している場合は
TryGetValue
.
もう一つのアプローチ。
var record = data.Where(p => p.Value == 1)
.Select(p => new { Key = p.Key, Value = p.Value })
.FirstOrDefault();
これは
クラス
- を返すので
null
となります。
関連
-
[解決済み] LINQ: フィルタリング基準で SingleOrDefault と FirstOrDefault() を使用する場合
-
[解決済み] JavaScriptで空文字列/未定義文字列/null文字列をチェックするにはどうすればよいですか?
-
[解決済み] JavaScriptでNULL、未定義、空白の変数をチェックする標準的な関数はありますか?
-
[解決済み] instanceofを呼び出す前にnullチェックは必要ですか?
-
[解決済み] 特定のプロパティに対するLINQのDistinct()
-
[解決済み] LINQで.Firstと.FirstOrDefaultを使用するタイミングは?
-
[解決済み] JavaScriptでNULL値をチェックするにはどうしたらいいですか?
-
[解決済み] LINQ .Any VS .Exists - 違いは何ですか?
-
[解決済み] KeyValuePairのデフォルト
-
[解決済み] JavaScriptでオブジェクトが存在するかどうかを確認する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「未割り当てのローカル変数を使用」とはどういう意味ですか?
-
[解決済み】"出力タイプがクラスライブラリのプロジェクトは直接起動できない"
-
[解決済み】ここで「要求URIに一致するHTTPリソースが見つかりませんでした」となるのはなぜですか?
-
[解決済み】Excel "外部テーブルが期待された形式ではありません。"
-
[解決済み】WSACancelBlockingCallの例外について
-
[解決済み】「namespace」なのに「type」のように使われる。
-
[解決済み】データが存在しないのに読み込もうとする試みが無効である
-
[解決済み】Nullableオブジェクトは値を持たなければならない?
-
[解決済み] KeyValuePairのデフォルト
-
[解決済み] FirstOrDefault<KeyValuePair>が値を返したことを確認するにはどうすればよいですか?