0

J# データ型を返す一連の API 呼び出しがあります。ほとんどのデータ型 (Integer、Boolean、Double、Float など) を問題なく変換できました。

私が今する必要があるのは、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' 型のオブジェクトを 'System.Collections.IEnumerator 型にキャストできません。

4

1 に答える 1

1

テストされていませんが、動作するはずです:

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
于 2010-12-22T20:26:31.387 に答える