📅  最后修改于: 2023-12-03 15:29:45.575000             🧑  作者: Mango
在C#中,可以使用FindIndex
方法在集合中查找匹配元素的索引。该方法接受一个谓词(一个判断元素是否匹配的方法)作为参数,并返回集合中第一个满足该条件的元素的索引。
语法如下:
int index = myList.FindIndex(predicate);
其中,myList
是一个列表或数组,predicate
是一个委托,它定义了一个用于比较元素的条件。该方法返回找到的元素的索引,如果没有找到,则返回 -1。
代码示例:
List<string> names = new List<string> { "Alice", "Bob", "Charlie", "David" };
int index = names.FindIndex(name => name.StartsWith("C"));
Console.WriteLine($"Index of first name starting with 'C': {index}");
// Output: Index of first name starting with 'C': 2
上面的代码使用 FindIndex
方法查找列表中第一个以 “C” 开头的名称,并返回其索引。
注意:FindIndex
方法只返回第一个匹配项的索引。如果存在多个匹配项,则可以使用 FindAll
方法查找所有匹配项的索引。
代码示例:
List<int> numbers = new List<int> { 2, 3, 5, 7, 11 };
List<int> evenIndices = numbers.FindAll((number, index) => index % 2 == 0);
Console.WriteLine($"Indices of even numbers: {string.Join(", ", evenIndices)}");
// Output: Indices of even numbers: 0, 2, 4
上面的代码使用FindAll
方法查找所有偶数的索引。
以上就是使用 C# 中的 FindIndex
方法查找数组或列表中匹配元素的索引的介绍。