Ste*_*ers 1 c# generics lambda
我正在尝试获取字符串列表中的下一项(邮政编码).通常情况下,我只是预先找到它,然后在列表中找到下一个,但我试图比那更直观和紧凑(更多的是一项运动而不是任何东西).
我可以用lambda轻松找到它:
List<string> postalCodes = new List<string> { "A1B", "A2B", "A3B" };
currentPostalCode = "A2B";
postalCodes.Find((s) => s == currentPostalCode);
Run Code Online (Sandbox Code Playgroud)
哪个很酷,所有,我正确得到"A2B",但我更喜欢索引而不是值.
您可以使用该IndexOf方法(这是泛型List<T>类的标准方法):
List<string> postalCodes = new List<string> { "A1B", "A2B", "A3B" };
currentPostalCode = "A2B";
int index = postalCodes.IndexOf(currentPostalCode);
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参阅MSDN.