C#Indexof返回值-1

时间:2017-08-09 18:48:40

标签: c# asp.net-mvc c#-4.0

我试图从一个列表中获取一个特定项的索引值。但函数返回值-1。我可以知道indexof返回-1的原因是什么?

1 个答案:

答案 0 :(得分:1)

IndexOf()返回-1的原因是因为您要查找的项目在列表中不存在

根据documentationIndexOf将返回“整个列表中第一次出现的项目的从零开始的索引(如果找到);否则为-1。”。

您应该使用调试器,您会发现您尝试查找索引的项目不在您的列表中

请记住(同样,这是在文档中)。 “此方法使用T的默认相等比较器EqualityComparer.Default确定相等性,即列表中值的类型。”因此,如果您确信您的项目应该在列表中,那么您应该查看您的类型的EqualityComparer。