我有一个字符串数组,并希望找到字符数最多的字符串的索引。我想在没有for循环的情况下这样做。
答案 0 :(得分:4)
您可以使用Select
overload that gives you the index,按降序排列并获取第一个值;
string[] strings = new string[]{ "one", "three", "two" };
var value = strings.Select ((val, ix) => new {len=val.Length, ix})
.OrderByDescending (x => x.len).FirstOrDefault();
Console.WriteLine ("Index of longest string is: " +
(value != null ? value.ix : -1));
答案 1 :(得分:0)
使用递归函数,该函数接受当前字符串,字符串数组,当前字符串的索引,数组中当前字符串的索引以及当前最大字符数。