【发布时间】:2020-09-13 11:00:04
【问题描述】:
我有一个从 A 类型派生的对象列表(X 和 Y 派生自 A)
List<A> list = new List<A>()
{
new X(),
new Y(),
};
我有一个从 A 类型派生的对象。 Z 对象
我想检查类型相等性是否在列表对象类型中存在与 Z 对象相同的类型 这样的代码怎么写?
【问题讨论】:
-
所以 X,Y,Z 是从 A 派生的?你想检查一个 Z 对象是否在 A 列表中?
-
Z类型是编译时固定的还是运行时动态确定的?
-
还有一个问题:类型必须完全匹配还是派生类型可以吗?示例:如果列表包含一个从 Z 派生的 ZZ 类型的对象,它是否匹配?
-
@KlausGütter 可以在运行时确定。顺便说一句,我的对象类型不支持任何接口,如 IEnumerable 等。
-
@KlausGütter 我的类型是否必须完全匹配-->是的。
标签: c# list object types equality