【发布时间】:2015-03-19 14:24:39
【问题描述】:
我正在寻求有关如何查询列表并返回索引的帮助,但不使用 Linq。我见过很多使用 Linq 的例子,但是我正在编写查询的软件不支持 Linq。 :(
让我们继续前进的例子:
List<string> location = new List<string>();
location.add(@"C:\test\numbers\FileName_IgnoreThis_1.jpg");
location.add(@"C:\test\numbers\FileName_IgnoreThis_2.jpg");
location.add(@"C:\test\numbers\FileName_ImAfterThis_3.jpg");
location.add(@"C:\test\numbers\FileName_IgnoreThis_4.jpg");
location.add(@"C:\test\numbers\FileName_ImAfterThis_5.jpg");
所以这个列表可能会填充几百条记录,我需要做的是在列表中查询文本“ImAfterThis”,然后将该项目的索引号位置返回到字符串数组中,但不使用 Linq。
所需的结果是将 2 和 4 添加到字符串数组中。
我正在考虑在列表中执行 for 循环,但有更好的方法来实现吗?
List<int> results = new List<int>();
int i = 0;
foreach (string value in location)
{
if (value.Contains("IAfterThis"))
{
results.Add(i);
Console.WriteLine("Found in Index: " + i);
}
i++;
}
Console.ReadLine();
提前致谢。
【问题讨论】:
-
你做了哪些努力?
-
我认为一个循环会起作用 - 迭代直到你找到你想要的项目他们打破循环并存储位置
-
谢谢 horHAY,循环是我能想到的唯一方法。 @DanielA.White - 我得到了建议,但我明白了你的观点,并添加了我正在使用的 foreach 循环,该循环有效,但在任何其他方式之后。