2017-10-29 256 views
0

我是初學者,想知道我在做什麼錯在這裏?我嘗試了幾種不同的方法來做這個「新練習」,但總是最終得到錯誤代碼。如何正確添加一些值,因爲有兩個字符串[]內?如何在C#中表示(字符串,字符串[],字符串[])#

public string name; 
    public string[] times=new string[2]; 
    public string[] places=new string[2]; 


    public Exercise(string name,string[] times, string[] places) 
    { 
    this.name= name; 
    this.times[2] = times[2]; 
    this.places[2] = places[2]; 
    } 


    static void Main(string[] args) 

    { 


    //System.Collections.ArrayList exercise = new System.Collections.ArrayList(); 

     Exercise[] J1=new Exercise[5]; 

     J1[5] = new Exercise("junior","Wedn 9:30","Frid 9:30","Gym",""); 

    //exercise.Add(J1); 

    } 

回答

0

您的構造函數獲取3個參數,其中兩個是字符串數組。 在您的代碼中,您傳遞5個字符串參數。相反,你應該這樣:

J1[0] = new Exercise("junior", 
      new[] {"Wedn 9:30", "Frid 9:30"}, 
      new[] 
      { 
       "Gym", "" 
      } 
     ); 

另外你要創建數組的第5成員的練習。數組從零開始!所以用的5長度的鍛鍊有5個成員:J1 [0],J1 [1],J1 [2],J1 [3],J1 [4]

+0

快樂幫我的朋友! 如果我回答你的問題,我將不勝感激,如果你接受它作爲正確的答案:) –

+0

謝謝!好點我無意中使用了第五名成員。我已經嘗試按照您的建議添加數據。出於某種原因,它給出了一個錯誤CS1526:意外符號「{」。任何想法爲什麼? (抱歉已刪除回覆,不知道進入發信息) – KP2

+0

對不起我的朋友我有一個錯字編輯答案 –

0

有在J1[5] = new Exercise("junior","Wedn 9:30","Frid 9:30","Gym","");

兩個問題
  1. J1的長度爲5,表示從索引0到4,並且您正在5位置分配。
  2. 您將5個參數傳遞給承包商,而構造函數只接受3個(其中兩個是字符串數組)。

    String times[] = {"Wedn 9:30","Frid 9:30"}; String places[]= {"Gym",""}; J1[0] = new Exercise("junior", times, places);

+0

謝謝!出於某種原因,它給出了一個錯誤CS1526:意外符號「{」。任何想法爲什麼? – KP2

+0

@ KP2 extra'{'存在於您的代碼中。檢查一下。 –

+0

謝謝。這樣做:J1 [0] =新練習(「初級」, 新[] {「Wedn 9:30」,「Frid 9:30」}, new [] { 「Gym」,「」 } ); – KP2