2009-08-23 17 views
1

我已經創建了一個清單類,但我不知道如何從中檢索信息。我知道如何去在它在foreach循環中,並顯示所有項目,但我不知道怎麼看,如果溜溜球是在那裏,如果是,則打印的名稱,成本和數量的標籤。任何人都可以幫忙嗎?清單類

+4

一些代碼將是一件好事。在我們知道您的庫存類是什麼樣子之前,我們沒有太多可以做的事情。 – 2009-08-23 13:34:30

回答

1

我希望你超越一個庫存類和創建一個產品類。面向對象的語言都是關於封裝和信息隱藏的。將產品的輸出嵌入到該對象的方法中。客戶可以簡單地稱呼它,而不必在整個地方重複。

我也建議你的庫存類中的查找方法,可以讓你搜索一個產品實例。您現在可能想要按名稱搜索,但成本,類別或製造商的情況如何?也許你會想稍後再擴展它。

我同意馬克的字典建議,但我會建議你做庫存的私有實現的那部分。您正在添加額外的抽象概念,使得Inventory不僅僅是一本字典。

我認爲,字符串和數據結構是美妙的,但往往這些原語泄漏到代碼時,再把它們藏的對象將大大爲客戶更好。這就是我認爲良好的面向對象設計的全部內容。

1

既然您提到了foreach,它聽起來像它實現了IEnumerable<T>。在這種情況下,如果你使用的是C#3.0/LINQ,是這樣的:

var yoyo = inventory.FirstOrDefault(item => item.Name == "YoYo"); 
if(yoyo != null) { // found it 
    Console.WriteLine(yoyo.Cost); // etc 
} 

你也可以看看字典,如果你有大量的數據...