【发布时间】:2011-03-02 11:20:53
【问题描述】:
我有一个方法,我正在获取一个通用对象并使用TypeOf 来检查已通过的内容。现在我想将List(Of T) 传递给它(T 是任何东西),无论 T 是什么,我都想对这个列表做同样的事情。我尝试了以下方法:
public sub foo(ByVal obj As Object)
if TypeOf obj Is List(Of Object) Then
'do stuff
end if
end sub
但是,如果我通过 List(Of String),这似乎不起作用。我想List(Of Object) 和List(Of String) 被视为不同的对象,但我认为由于String 是一个对象,因此比较可能会起作用。
现在我意识到这和 sin 一样丑陋,我最好重载方法以将 List(Of T) 作为其参数,但我主要是出于好奇:有没有比较类型的方法 @ 987654329@ 和 List(Of Object2) 并得到肯定的结果,因为它们都只是 List(Of T)?
【问题讨论】:
-
呃,如果列表包含不同的类型,你打算如何比较它们?我不明白利用泛型和接受
List(Of T)有什么问题。 -
“不管 T 是什么,我都想对这个列表做同样的事情”——那是什么?
标签: .net vb.net generics generic-list