所以,我有一本名为 Potions 的字典。我需要检查药水中的键是否与作为参数传递的对象同名。现在我能够做到这一点,但如果项目对象和键具有相同的名称,我无法弄清楚如何向该特定键添加值。此代码适用于对象的第一个实例。但是当我添加另一个与键同名的实例对象时,我得到了一个未找到键的异常。我知道这两个对象不会相同。如何在字典中提取对象引用?还是有其他方法?
public static void addItem(Potion item)
{
if (Potions.Count >0)
{
foreach(KeyValuePair<Potion,int> pair in Potions)
{
if (pair.Key.itemName == item.itemName)
{
containsItem = true;
}
}
if (containsItem)
{
Potions[item] += 1;
Debug.Log (Potions[item]);
containsItem = false;
}
else
{
Potions.Add(item,1);
}
}
else
{
Potions.Add (item,1);
}
foreach(KeyValuePair<Potion,int> pair in Potions)
{
Debug.Log (pair.Key.itemName + " : " + pair.Value);
}
}