我试图从一个列表中获取一个特定项的索引值。但函数返回值-1。我可以知道indexof返回-1的原因是什么?
答案 0 :(得分:1)
IndexOf()
返回-1
的原因是因为您要查找的项目在列表中不存在。
根据documentation,IndexOf
将返回“整个列表中第一次出现的项目的从零开始的索引(如果找到);否则为-1。”。
您应该使用调试器,您会发现您尝试查找索引的项目不在您的列表中。
请记住(同样,这是在文档中)。 “此方法使用T的默认相等比较器EqualityComparer.Default确定相等性,即列表中值的类型。”因此,如果您确信您的项目应该在列表中,那么您应该查看您的类型的EqualityComparer。