2014-10-02 75 views
-2

的陣列的我有兩個陣列:串[]文件串[]評論值在索引的另一陣列

我通過文件循環使用foreach循環陣列。

foreach(string file in files) 
{ 
comments.SetValue(//index of file we are at) 
} 

說我得到一個文件,該文件是索引20的文件數組。我想要做的就是在相同的索引處獲取comments數組的值。因此,對於文件的[0]我返回評論[0],文件[1]評論[1]等等等等

+0

考慮使用'詞典<字符串,字符串>',也許。 – 2014-10-02 09:28:06

回答

2

我會做這樣的

for (int i = 0; i < files.Length; i++) { 
    string file = files[i]; 
    string comment = comments[i]; 
} 
0

您可以使用IndexOf假設重複不會成爲一個問題

foreach(string file in files) 
{ 
    int index = files.IndexOf(file); 
    //blah blah 
} 

但它可能會可以更容易,更有效地使用一個for循環,那麼你將有指數

for (var i = 0; i < files.Length; i++) 
0

不要使用foreach,使用for代替:

for (var i = 0; i < files.Length; i++) 
{ 
    // ... 
} 
1

做簡單:

string[] files = { "1", "2", "3" }; 
      string[] comments = {"a","b","c"}; 

      int i = 0; 
      foreach (string file in files) 
      { 
       files[i] = comments[i] ; 
       i++; 
      } 
0

您可以使用此.Zip()

foreach(var fc in files.Zip(comments, (f, c) => new { File = f, Comment = c })) 
{ 
    Console.WriteLine(fc.File); 
    Console.WriteLine(fc.Comment); 
} 
相關問題