我有两个数组:字符串[]文件和字符串[]评论
我使用foreach循环遍历 files 数组。
foreach(string file in files)
{
comments.SetValue(//index of file we are at)
}
假设我到了一个文件数组索引为20的文件。我想要做的是在相同的索引处获取comments数组的值。所以对于文件[0]我返回注释[0],文件[1]注释[1]等等。
答案 0 :(得分:2)
我会这样做
for (int i = 0; i < files.Length; i++) {
string file = files[i];
string comment = comments[i];
}
答案 1 :(得分:1)
简单地说:
string[] files = { "1", "2", "3" };
string[] comments = {"a","b","c"};
int i = 0;
foreach (string file in files)
{
files[i] = comments[i] ;
i++;
}
答案 2 :(得分:0)
你可以使用IndexOf
假设重复不会成为问题
foreach(string file in files)
{
int index = files.IndexOf(file);
//blah blah
}
但是使用for循环可能更容易,更有效,那么你将拥有索引
for (var i = 0; i < files.Length; i++)
答案 3 :(得分:0)
请勿使用foreach
,而是使用for
:
for (var i = 0; i < files.Length; i++)
{
// ...
}
答案 4 :(得分:0)
您可以使用.Zip()
:
foreach(var fc in files.Zip(comments, (f, c) => new { File = f, Comment = c }))
{
Console.WriteLine(fc.File);
Console.WriteLine(fc.Comment);
}