如何在 C# 中的 lambda 表达式内查找数组中元素的索引

我想创建一个翻转字符串顺序的函数


例子:"hi" => "ih"


这是我迄今为止得出的代码:


public static string Flip(this string Str)

{

  char[] chararray = Str.ToCharArray();

  string output = "";

  chararray. //i dont know what methoud should be used to execute action 

  return output; 

}

问题是,我想知道 lambda 表达式中当前选择的对象的索引是什么 ex: xin(x => x ) indexOf不是一个选项,因为可以有多个来自同一类型的字符


我怎样才能知道索引?


编辑:我不想知道如何反转字符串,我想知道如何在 lambda 表达式中查找对象的索引


holdtom
浏览 166回答 1
1回答

扬帆大鱼

在LINQ 的Select和Where扩展方法中,您有一个重载,它在 lambda 中接受两个参数,第一个是元素,第二个是索引。所以在你的情况下,如果你有一个char数组:var reversedArray = charArray          .Select((c, i) => new { Element = c, Index = i })          .OrderByDescending(arg => arg.Index)          .Select(arg => arg.Element)          .ToArray();这只是为了演示如何在 LINQ 扩展方法中获取索引。正如问题所述,这不是关于如何反转字符串。
打开App,查看更多内容
随时随地看视频慕课网APP