5

我试图返回一个字符串数组,但return test;只给出“System.String[]”作为输出。如果我遍历 test[] 所有值都正确填写。我究竟做错了什么?

 public static String[] ReturnTheStrings()
 {
     FillTheArray();
     String[] test = new String[178];

     for (int i = 0; i < 178; i++)
     {
         if ((Class7.Method4(strings[i])) == "decoding wrong")
         {
             test[i] = strings[i+1];
             //System.Console.WriteLine("Non-encoded value");
         }
         else
         {
             test[i] = Class7.Method4(strings[i+1]);
             //System.Console.WriteLine("Encoded value");
         }
     }
     return test;
 }

我正在使用 MS Visual C# 2010。

4

1 回答 1

17

调用.ToString()数组将返回“System.String[]”。如果要显示数组中的每个值,则需要对其进行迭代。

例如:

foreach (var value in test)
{
    Console.WriteLine(value);
}

或者,正如@Oded 指出的那样,您可以使用String.Join

Console.WriteLine(String.Join(Environment.NewLine, stringArray));
于 2012-08-27T17:36:31.963 回答