我遇到的問題是我想從包含2種不同類型的列表中刪除某個項目。無論我嘗試什麼,我只是得到錯誤,並且我可以使用類型,如果我創建該類的新實例,它不會刪除舊的。我真的被困在這裏,我不知道我該怎麼做。從包含多種類型的列表中刪除特殊類型C#
private List<Toys> toys = new List<Toys>();
toys.Add(new Ball("red"));
toys.Add(new MouseToy("gray"));
public abstract class Toys {}
public class Ball : Toys {}
public class MouseToy : Toys {}
//how do i remove only one of the types?
//beacuse this does not work witch is one of many things i tried
foreach(var toy in toys){
if (toy.GetType == Ball){
toys.Remove(toy)
}
}
這幾乎是我用於列表的代碼。
這是否容易?我的意思是我不認爲我真的明白它在做什麼。玩具獲得什麼價值「典型」「物」? –
哦,等等,我想我明白了,我從列表中刪除球對象,然後再次將它列入其中只包含其餘的列表。 –
@JohannesBjärehall是的,你創建一個新的列表,其中只有那些不是Ball的對象。 –