J#收集到VB .NET收集
-
12-10-2019 - |
题
我有一系列返回J#数据类型的API调用。我已经能够转换大多数数据类型(整数,布尔值,双,浮点等)。
我现在需要做的是将java.util.collection转换为vb .net集合(arrayList?)
这是我的尝试:
Public Function MakeDotNETCollection(ByVal javaCol As java.util.Collection) As Collection
Dim dotNetCol As Collection
If Not javaCol Is Nothing Then
dotNetCol = New Collection
Dim it As IEnumerator = javaCol.iterator()
For Each it In CType(javaCol, Collection)
dotNetCol.Add(it.Current)
Next it
End If
Return dotNetCol
End Function
我一直在遇到一个运行时错误“无法将'AbstractListListIterator'类型的对象施加到type'System.Collections.ienumerator。有什么想法吗?
解决方案
未经测试,但应该起作用:
Public Function MakeDotNETCollection(ByVal javaCol As java.util.Collection) As Collection
Dim dotNetCol As Collection
If Not javaCol Is Nothing Then
dotNetCol = New Collection
Dim it As java.util.Iterator = javaCol.iterator()
While it.HasNext()
dotNetCol.Add(it.next())
End While
End If
Return dotNetCol
End Function
不隶属于 StackOverflow