在vb.net中
我正在myList as List(of myClass)
和myData as myClass
那么如何判断 myList 是否包含 myData ?
目前我这样做:
dim myList as List(of myClass) = myClasses.GetData()
dim myData as myClass = myClasses.getData(1)
for each Item as myClass in myList
if Item.uin = myData.uin then
msgbox 'yeah'
end if
next
什么可以成为下一个更好的解决方案?
答案 0 :(得分:3)
List应该有一个Contains()方法,可以做你想要的。
如果您想要偏移,请使用indexOf()。
编辑:如果由于某种原因你的列表不包含相同的对象,你必须比较它们的“uin”字段是否相等,最简单的方法是使用LINQ:
myList.Any(Function(item) item.uin = myData.uin)
否则,泛型List有一个带有谓词的Exists()方法:
myList.Exists(Function(item) item.uin = myData.uin)
抱歉,我的VB.NET不太流利(C#person我自己),所以如果我在那里发了任何拼写错误,请告诉我。