.NET Generic List(Of FileInfo)使用FileInfo.FullName进行搜索

时间:2014-05-12 09:56:18

标签: .net list dictionary

示例:我在List中有很多FileInfo对象。可能10000s。我需要使用其FullName属性检查列表是否包含给定的FileInfo对象。我甚至对索引都不感兴趣,我只是想知道它是否存在。天真的方法是For ...接下来,不过应该有更快的方法。

所以这就是这个问题的一般内容:

Class Foo
   Friend SomeString as String
   Friend SomeInteger as Integer
End Class

Module Work
    Dim FooList as New List(Of Foo)

    Friend Function IsInList(aString as String) as Boolean
       'The question is what to do here other than the below:
       For i = 0 to FooList.Count - 1
           If (FooList(i).SomeString = aString) Then Return True
       Next
       Return False
    End Function
End Module

上述方法有哪些?我的意思是我可以使用一个单独的Dictionary(Of String,Integer)将Foo中的SomeString键映射到FooList中特定Foo的索引,但这相当丑陋。

也许有一个轻量级的Dictionary / List组合类?

理想情况下,我想写这样的东西:

FooList.IndexOf(SomeStringValue)

即使实际列表是Foo列表,也不是字符串列表。

编辑:理想情况下,将提供.NET 2.0解决方案。

任何建议都将不胜感激。

0 个答案:

没有答案