C#winform如何查找list中全部满足条件元素的索引
时间: 2024-10-13 08:14:42 浏览: 65
在C# WinForm中,如果你有一个List<T>类型的集合,并想要查找其中所有满足特定条件的元素的索引,你可以使用LINQ(Language Integrated Query)来完成这个任务。以下是一个简单的示例:
```csharp
using System;
using System.Collections.Generic;
using System.Linq;
public class YourClass
{
private List<int> yourList = new List<int> { 1, 5, 10, 15, 20 };
public List<int> FindIndexesWhereCondition(int conditionValue)
{
return yourList.Where(item => item > conditionValue).Select((value, index) => index).ToList();
}
// 使用示例
static void Main()
{
var list = new YourClass();
int searchCondition = 10;
var indexes = list.FindIndexesWhereCondition(searchCondition);
if (indexes.Any())
{
Console.WriteLine($"Elements greater than {searchCondition} have the following indexes:");
foreach (int index in indexes)
{
Console.Write(index + " ");
}
}
else
{
Console.WriteLine("No elements found that meet the condition.");
}
}
}
```
在这个例子中,`FindIndexesWhereCondition`方法接收一个值作为参数,然后使用`Where` LINQ扩展方法过滤出大于给定条件值的项。接着,`Select`方法用于获取每个匹配项的索引,并将结果转换为新的列表。
阅读全文