我需要检查一个字符串是否包含Hashset的一个值(字符串)
我能够做到,但我已经搜索了更快的代码。我找到了仅针对c#,java,phyton的解决方案,但没有为vb.net提供解决方案
这是我使用的代码示例:
Dim mDict = New Dictionary(Of String, String)
Dim ArrStr() As String = {"First:", "Second:", "Third:"}
Dim StringA$ = "Second: It works!"
For Each k As String In ArrStr
If StringA.Contains(k) Then
mDict(k) = StringA
Exit For
End If
Next k
我的问题是:有没有办法避免循环?
编辑:
我要感谢大家给我的建议和澄清。 我已经明白我的问题没有答案,也许这是一个糟糕的问题。
我还没有得到答案,但我已经学到了一些东西......再次感谢
答案 0 :(得分:4)
您可以使用LINQ,但它仍会在内部执行循环:
mDict = ArrStr.Where(Function(x) StringA.Contains(x))
.ToDictionary(Function(x) x, Function(x) StringA)