如何从特定项目的列表中获取索引<字符串>

本文关键字:获取 索引 字符串 列表 项目 | 更新日期: 2023-09-27 18:37:03

我有这个列表:

List<string> headers = new List<string>(); 
headers.Add("Red"); 
headers.Add("Blue"); 
headers.Add("Green");
headers.Add("Black");

我有这个功能:

private int getColorIndex(string colorName , List<string> headers)
{
     int index = LINQ;
}

getColorIndex函数中,我想编写 LINQ,它从标题列表(在 colorName 变量中)返回特定颜色的索引。

例如,如果颜色名称为黑色,则索引的值将为 3。

colorName可以包含大字母或小字母。

例如:

  colorName = Black or colorName = black

知道我该怎么写这个 LINQ 吗?

如何从特定项目的列表中获取索引<字符串>

你不需要 LINQ 来实现这一点。 List有一个FindIndex方法。它接受一个谓词并返回匹配的第一个元素的索引。在谓词中,您可以使用 String.Equals 比较字符串,并使用 StringComparison 参数忽略大小写。

private int getColorIndex(string colorName , List<string> headers)
{
     int index = headers.FindIndex(s => String.Equals(s, colorName, StringComparison.InvariantCultureIgnoreCase));
}