0

我正在为 XNA 项目开发屏幕管理器类。我正在跟踪类型列表GameScreen以跟踪我的每个游戏状态。我的每个屏幕都继承自GameScreen

我将如何在我的列表中找到一个特定的孩子?

例如,假设我们有:

List<Fruit> fruits = new List<Fruit>(){Apple, Orange, Banana, Pineapple};

我想编写一个函数,接收某种类型的水果并从列表中返回该特定水果。我该怎么做呢?

编辑

public Fruit findFruit(object myFruit)
{
    //use myFruit to find the correct fruit in the list
}
4

2 回答 2

1

家庭作业?

你可以这样做:

public Fruit GetFruit(Type type)
{    
    return fruits.Find(x => x.GetType() == type);
}
于 2012-04-25T15:15:14.107 回答
0

循环遍历每个元素并比较您想要的类的类型

foreach(Fruit f in fruits) { if(typeof(f) is typeof(Apple) return f; }

于 2012-04-25T15:15:20.777 回答