c# – 在数组中查找多个索引

前端之家收集整理的这篇文章主要介绍了c# – 在数组中查找多个索引前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
说我有这样的数组
string [] fruits = {"watermelon","apple","kiwi","pear","banana"};

是否有内置函数允许我查询“apple”的所有索引?
例如,

fruits.FindAllIndex("apple");

将返回1和2的数组

如果没有,我该如何实施呢?

谢谢!

解决方法

一种方法是这样写:
var indices = fruits
                .Select ((f,i) => new {f,i})
                .Where (x => x.f == "apple")
                .Select (x => x.i);

或传统方式:

var indices = new List<int>();
for (int i = 0; i < fruits.Length; i++)
    if(fruits[i] == "apple")
        indices.Add(i);

猜你在找的C#相关文章