3
A
回答
4
您可以通過.Intersect()
模擬這種檢查在路口設置了所有必需的元素。我想這是相當低效但又快又髒。
List<T> list = ...
List<T> shouldBeContained = ...
bool containsAll = (list.Intersect(shouldBeContained).Count == shouldBeContained.Count)
或者你可以用.All()來做到這一點。我想這是更有效的和更清潔:
List<T> list = ...
List<T> shouldBeContained = ...
bool containsAll = (shouldBeContained.All(x=>list.Contains(x));
0
LINQ的具有許多可用於檢查一組在另一個值中的存在的操作符。
我會用Intersect
:
Produces the set intersection of two sequences by using the default equality comparer to compare values.
0
雖然沒有什麼簡單的內置在...你總是可以創建擴展方法,使生活更輕鬆:
public static bool ContainsAny<T>(this IEnumerable<T> data,
IEnumerable<T> intersection)
{
foreach(T item in intersection)
if(data.Contains(item)
return true;
return false;
}
public static bool ContainsAll<T>(this IEnumerable<T> data,
IEnumerable<T> intersection)
{
foreach(T item in intersection)
if(!data.Contains(item))
return false;
return true;
}
相關問題
- 1. Redis - 替代檢查集合中是否存在多個值
- 2. 可以檢查一個集合或子集合是否存在?
- 3. 檢查一個值是否在與LINQ的集合中
- 4. 查詢數據存儲中存在的屬性值集合
- 5. NodeJS + Mongo native - 檢查查詢之前是否存在集合
- 6. NUnit聲明一個集合,檢查是否存在一個值
- 7. 如何檢查集合中是否存在字段值
- 8. python - 檢查列表中是否存在確切的值集合
- 9. 檢查mongo集合中是否存在值
- 10. 檢查一個集合中是否存在一個對象(T)
- 11. 檢查兩個集合中是否存在任何元素
- 12. 流星檢查用戶集合中是否存在用戶名
- 13. 如何使用Node.js檢查MongoDB中是否存在集合?
- 14. 用linq查詢集合的子集合
- 15. 使用Linq查詢集合集合
- 16. 在分組集合中有效檢查是否存在
- 17. 檢查mysql集合中是否存在值,如果存在,打印它
- 18. 檢查是否在一個jQuery集合
- 19. Kohana 3.2 ORM檢查集合中是否存在記錄
- 20. 檢查集合中是否存在某些參數
- 21. 檢查MySQL集合列表中是否存在一些項目
- 22. 在LINQ中查詢子集合
- 23. 檢查具有某個值的集合中的所有項目是否都在Linq的另一個集合中?
- 24. LINQ:查詢集合是否包含另一個集合中的任何元素
- 25. 檢查SQL中是否存在子集
- 26. 如何檢查一個集合是否已經存在於ArangoDB
- 27. Node.js - Mongoose - 檢查一個集合是否存在
- 28. 在SQL中存儲集合
- 29. 存儲整數集來檢查是否已經提到某個集合
- 30. 檢查集合中的值
選擇及在哪裏?這將返回滿足您的條件的項目 – 2010-02-18 15:14:07