2012-04-21 38 views
0

下面列出了<>這是一個方法如何在方法中使用列表?

public void MenuList() 
{ 
    List<string> flavors = new List<string>(); 
    flavors.Add("Angus Steakhouse"); 
    flavors.Add("Belly Buster"); 
    flavors.Add("Pizza Bianca"); 
} 

裏面現在,我把一個新的方法

public int GetSizePrices(int num) 
{ 
    this.MenuList ???  
} 

如何使用內部GetSizePrices方法的味道對象? 謝謝。

+0

你想讓GetSizePrices()方法對flavors對象做什麼? – 2012-04-21 03:16:44

+0

只需在GetSizePrices()方法內讀取並使用它即可。我想第一個答案是我正在尋找的。 – Ryan 2012-04-21 03:28:57

+0

更重要的問題是,口味是否應該改變?或者,MenuList()方法是否應該專門負責創建並向其他所有方法傳遞該列表?最具體地說,您是否可以更新您的問題以顯示您實際正在嘗試執行的操作? – 2012-04-21 03:31:49

回答

0

我認爲你正在尋找的東西一樣?:

public Class SomeClass 
{ 
    public IEnumerable<string> MenuList() 
    { 
    List<string> flavors = new List<string>(); 
    flavors.Add("Angus Steakhouse"); 
    flavors.Add("Belly Buster"); 
    flavors.Add("Pizza Bianca"); 
    return flavors; 
    } 

    public int GetSizePrices(int num) 
    { 
    // No idea what to do with num 
    return this.MenuList().Count(); 
    } 
} 
+0

-1 OP對於C#來說顯然是新的,這並不解釋如何將'flavors'放入字段(或屬性)中,然後可以在同一個類中使用其他方法。 – 2012-04-21 03:12:19

+0

我同意你的斷言,它沒有解釋它是如何做的,但我也認爲OP的問題是不明確的,這個答案在一般水平上確實可以訪問flavor對象。 – 2012-04-21 03:16:03

0

顯然有許多不同的方式來實現這一點,將根據您的設計要求。

現在讓我們假設你是C#的新手,你可以考慮這兩個簡單的方法讓你開始你的旅程(我有意地忽略了慣用的C#以儘可能熟悉你現有的代碼)。


選項1 - 把它作爲參數:

public List<string> BuildMenuList() 
{ 
    List<string> flavors = new List<string>(); 
    flavors.Add("Angus Steakhouse"); 
    flavors.Add("Belly Buster"); 
    flavors.Add("Pizza Bianca"); 

    return flavors; 
} 

public int GetSizePrices(int num, List<string> menuList) 
{ 
    // access to menuList 
    var cnt = menuList.Count(); 
} 


選擇2 - 讓它可以作爲財產

public class Menu 
{ 
    // A public property that is accessible in this class and from the outside 
    public List<string> MenuList { get; set;} 

    public Menu() 
    { 
     // Populate the property in the constructor of the class 
     MenuList = new List<string>(); 
     MenuList.Add("Angus Steakhouse"); 
     MenuList.Add("Belly Buster"); 
     MenuList.Add("Pizza Bianca"); 
    } 

    public int GetSizePrices(int num) 
    { 
     // your implementation details here... 
     return MenuList.Count(); 
    } 
} 

希望它能幫助。

相關問題