[英]how to select instance from a list in c#
我有一個結構,該結構具有項目列表和有關結構的其他變量
我想檢查列表中的枚舉是否具有特定值。
喜歡
struct.list.havevalue == 5;
我如何計算在結構的項目列表中枚舉中具有特定值的所有人
您的問題尚不清楚,但是聽起來您可能想使用LINQ:
int count = x.list.Count(v => v.Value == 5);
但是,對於所涉及的類型沒有更具體的說明,這很難說。 如果您可以提供更多詳細信息(例如所涉及的類型的聲明),那將非常有幫助。
順便說一句,一個結構包含一個列表是很奇怪的。 您真的確定要使用結構而不是類嗎?
如果您用“列表”表示IList<int>
或類似的名稱,則將類似於:
struct.list.Count(i => i == 5);
List.IndexOf(T)方法將為您提供幫助。 連結文字
請注意,此方法(與任何建議的Linq解決方案一樣)是O(n)運算。 因此,如果您擔心查找例程的性能,則可以根據需要考慮將List <T>轉換為HashSet <T>或任何其他基於哈希表的集合。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.