次の方法で共有


独自クラスのList内検索

質問

2009年4月30日木曜日 12:34

自分で作ったクラスのメンバーに、
strign m_name;
があります。
そのクラスをListにて管理しています。
List内のある特定メンバーを検索する方法は、
どういった方法がありますでしょうか?

foreachで検索は可能ですが、
いまいちスマートでは無い様に思います。
BinarySearchは文字列なので、上手くなく、
Findは固定との検索なので、使えませんでした。
簡単な検索があるかと思うのですが、
ご教授宜しくお願い致します。

すべての返信 (2)

2009年5月1日金曜日 5:17 ✅回答済み

使い捨ての検索なら匿名メソッド or ラムダ式を使った Find/FindIndex が一番楽でしょう。
ラムダ式ならこんな感じ。
var foundItem = list.Find(item => item.Name == textBox1.Text);

こんな記述が出来るんですね。
勉強になりました。
一発で通りました。
どうも有難う御座いました!


2009年4月30日木曜日 12:52 | 1 票

BinarySearch でも文字列だろうがなんだろうが検索できます。ただ、その検索キーでソートされてる必要がありますけど。
固定との検索ってどういう意味でしょうか。

使い捨ての検索なら匿名メソッド or ラムダ式を使った Find/FindIndex が一番楽でしょう。
ラムダ式ならこんな感じ。
var foundItem = list.Find(item => item.Name == textBox1.Text);