将Scala类型化集合转换为Java,使用无限制通配符等。集合<?>

3
问题: 需要在Scala中实现来自第三方Java库的接口
...
解决方案是使用以下代码: ...<在此插入Iterable>.asInstanceOf[java.util.Collection[_]]
 val props:Map[Object,Property] = ...
 override def getItemPropertyIds()=props.keys.asInstanceOf[java.util.Collection[_]]

有更好的解决方案吗?也许可以使用Predef的隐式转换来实现?
2个回答

1

我也尝试了这个:

import scala.collection.JavaConversions
...
override def getItemPropertyIds() = JavaConversions.asCollection(props.keys)

那么,这个解决方案是否按照您的期望工作(并且您对此感到满意),还是没有达到预期? - Arjan Blokzijl

1
创建一些scala.Iterable,使用scala.collection.asJavaCollection()(可能是隐式地)转换为java.util.Collection。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接