【发布时间】:2018-08-25 19:11:55
【问题描述】:
如何在列表中找到条目的索引。我的代码如下。
listFrom 和 listTo 包含字符串条目。
我收到错误:
严重性代码描述项目文件行抑制状态 错误 CS1503 参数 1:无法从 'System.Collections.Generic.List' 转换为 'string'
List<string> listFrom = new List<string>(); //Contains a list of strings
List<string> listTo = new List<string>(); //Contains a list of strings
List<string> lineStart = listFrom.Except(listTo).ToList(); //Will always return a single value
List<string> lineEnd = listTo.Except(listFrom).ToList(); //Will always return a single value
int startLineIndex = listFrom.IndexOf(lineStart); //Error on this line
Console.WriteLine("Index of Start: " + startLineIndex);
【问题讨论】:
-
您的列表都是空的。你想做什么?
-
您对那个编译时错误有什么不明白的地方?该方法采用
string作为参数,您传入的是List<string>。 -
listFrom.IndexOf需要string你正在传递一个List<string>- 错误信息非常清楚 -
@Stefan 我不知道你想做什么。
Except()为您提供两个列表之间差异的集合。如果您确定结果集合中只会有 一个 项,请不要调用ToList(),根据您的需要调用SingleOrDefault()或FirstOrDefault()。确保查找它们之间的区别。 -
@maccettura 谢谢。
SingleOrDefault()做我想做的事。正确,总会退回一件商品。我应该在我的问题中提到这一点。
标签: c# string list indexing indexof