我有這個功課,我只有1個問題,我不知道解決方案。我們有這個類,我們musn't創建另一個變量或方法...如何獲取字典C#中的對象鍵的支持?
我有一個啤酒字典與<啤酒對象,詮釋收入>。但是該方法只獲得了Beer對象的名稱(prop),而不是對象。
而且我沒有其他想法,我怎麼可以從字典
我只有2個想法得到了啤酒對象的名稱,但這些不工作。
第一個是我嘗試使用一個ContainsKey()方法。第二個是的foreach迭代
using System;
using System.Collections.Generic;
namespace PubBeer
{
public class Beer
{
string name;
int price;
double alcohol;
public string Name{ get { return name; } }
public int Price{ get; set; }
public double Alcohol{ get { return alcohol;} }
public Sör(string name, int price, double alcohol)
{
this.name= name;
this.price= price;
this.alcohol= alcohol;
}
public override bool Equals(object obj)
{
if (obj is Beer)
{
Beer other = (Beer)obj;
return this.name== other.name;
}
return false;
}
}
public class Pub
{
int income;
IDictionary<Beer, int> beers= new Dictionary<Beer, int>();
public int Income{ get; set; }
public int Sold(string beerName, int mug)
{
// Here the problem
beers; // Here I want to like this: beers.Contains(beerName)
// beers.ContainsKey(Object.Name==beerName) or someone like this
// foreach (var item in beers)
// {
// item.Key.Name== beerName;
// }
}
...
我可以建議改變你的關鍵。通過(可能)搜索字典中的每個關鍵字可以破壞字典的效率。 –
@my你確實是對的,但如果這是他的家庭作業,他的老師可能希望他學習一些東西(linq查詢也許?) – fnurglewitz
我不認爲linq ...因爲他沒有談論linq-s唯一的接口在最後一課......但這是作業 – blaces