という基本クラスがありますFruits
。次に、その子クラスがいくつかあります。たとえば、、、Banana:Fruit
などApple:Fruit
です。
次に、バナナ、アップルなど、さまざまなタイプのオブジェクトのリストを取得します。それは次のようになります。
List<Fruits> f = new List<Fruits>{new Banana(), new Banana(), new Apple(), new Banana()};
タイプだけでなく果物のリストを取得できる関数が必要で、リストにそのタイプのオブジェクトのみを含むリストを提供します。したがってfind_obj(f, Banana)
、 , (または何か) を呼び出すと、バナナのみを含むリストが返されます。
ここで極度の無知を示している可能性があり、申し訳ありません。これは可能ですか?クラスを事前に知っていれば、次のようなことができることはわかっています。
public List<Fruit> GimmeBanana(List<Fruit> f)
{
List<Fruit> Output=new List<Fruit>{ };
foreach(Fruit fr in f)
{
if (fr is Banana){ Output.Add(fr); }
}
}
しかし、それをAnyクラスで機能させる方法がわかりません。