是否有内置方法可以执行此操作,还是必须编写自己的循环? 我尝试过以下代码:
int index = Array.IndexOf(options, ind => ind.Contains("COM"));
但是它给出了以下错误:无法将lambda转换为类型对象。 此代码运行但始终返回-1:
int index = Array.IndexOf(options, options.Where(ind => ind.Contains("COM")));
欢迎任何帮助,谢谢
答案 0 :(得分:1)
试试这个:
int index = Array.FindIndex(options, s => s.StartsWith("COM"));
答案 1 :(得分:0)
您可以使用Array.FindIndex(T):
string[] foo = { "FOO", "BAR", "COM", "BUZZ" };
int theIndex = Array.FindIndex(foo, s => s.StartsWith("COM"));
// returns 2