2016-09-30 115 views
-1

我有3种方法1.将字符串作为数组[zipCodes],2.输出用户的菜单,并将字符串数组显示回给用户。前两个选项正在工作,经过测试,我可以说数组正在工作并接受字符串,但是我有麻烦将它们显示回给用户。输出字符串数组

我已经用ints使用了这个方法,它让我觉得[i]只适用于1个字符,不胜感激。

//这里是到目前为止的代码

static void Main(string[] args) 
     { 
      string[] zipCodes = new string[10]; 
      string zCounter; 

      for (int i = 0; i < zipCodes.Length; i++) 
      { 
       Console.WriteLine("Please enter 10 destinations:"); 
       zCounter = Convert.ToString(Console.ReadLine()); 
       zCounter = zipCodes[i]; 
      } 

      int sentinalNo; 

      Console.Clear(); 
      Console.WriteLine("Please enter from the following options: "); 
      Console.WriteLine("1. Display order zipcodes."); 
      Console.WriteLine("2. Search zipcode."); 
      Console.WriteLine("3. Exit."); 
      sentinalNo = Convert.ToInt32(Console.ReadLine()); 

      while (sentinalNo != 3) 
      { 
       switch (sentinalNo) 
       { 
        case 1: 
         DisplayZips(zipCodes); 
         break; 
       } 

      } 


     } 

     private static void DisplayZips(string[] zipCodes) 
     { 
      for (int i = 0; i < zipCodes.Length; i++) 
      { 
       // Why doesnt this work? 
       Console.WriteLine(zipCodes[i]); 
      } 
+0

'F9','F5','F10','F11',那些魔术串是? –

+0

@Quantic正如你可能知道的那样,它们是使用VS调试器时使用最多的键:) –

回答

2

您应该指定输入到数组项:

 // array of 10 strings each of them is null 
     string[] zipCodes = new string[10]; 
     ... 

     for (int i = 0; i < zipCodes.Length; i++) 
     { 
      Console.WriteLine("Please enter 10 destinations:"); 
      // Convert.ToString is redundant here 
      zCounter = Convert.ToString(Console.ReadLine()); 

      // swapped: user input is assigned to array items 
      zipCodes[i] = zCounter; 
     } 
+0

Ohhhhhhh,那么我没有声明的数组存储的日期类型是什么? –

+0

'string [] zipCodes = new string [10];'用10个'null'项目创建一个数组实例 –

+0

我知道这听起来像一个愚蠢的问题,但是有什么理由不在数组中声明数据类型或它只是常识,总是这样做? –