-4

我正在从列表中读取一件盔甲的坐标。当它找到那个特定的盔甲时,它应该获取那个盔甲对象,并将其添加到另一个列表中。然而我收到一个空对象错误(对象引用未设置为对象的实例)?

foreach (Armour item in armousOnMap)
        {
            if (item.Row == _yPosition && item.Column == _xPosition)
            {                    
                armourInventory.Add((Armour)item);
            }
        }
4

2 回答 2

0

您需要先初始化列表,然后将项目添加到其中。

var armourInventory = new List<Armour>();

在您制作清单时添加此行。

var armourInventory = new List<Armour>();
foreach (Armour item in armousOnMap)
{
    if (item.Row == _yPosition && item.Column == _xPosition)
    {                    
        armourInventory.Add((Armour)item);
    }
}
于 2013-02-22T07:13:37.397 回答
0

所有坐标都填充了吗?即不是空值?

var armourInventory = new List<Armour>();

foreach (Armour item in armousOnMap)
{
    if ((item.Row != null && item.Row == _yPosition) && (item.Column != null && item.Column == _xPosition))
    {                    
        armourInventory.Add((Armour)item);
    }
}
于 2013-02-22T10:42:58.477 回答