我正在从列表中读取一件盔甲的坐标。当它发现特定护甲时,它应该拿走那个护甲对象,然后将它添加到另一个列表中。但是我收到一个空对象错误(对象引用未设置为对象的实例)?
foreach (Armour item in armousOnMap)
{
if (item.Row == _yPosition && item.Column == _xPosition)
{
armourInventory.Add((Armour)item);
}
}
答案 0 :(得分: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);
}
}
答案 1 :(得分: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);
}
}