如何将java.util.list [POJO]转换为Scala数组[POJO]? 我尝试了list.toArray方法,但它给出了array [object]。 任何人都可以帮忙吗?
答案 0 :(得分:4)
您必须先创建目标数组,并将其作为toArray
方法的输入提供:
list.toArray(Array.ofDim[POJO](list.size))
此API将数组实例化的所有问题从toArray
方法转移给您,因此您有责任确保POJO
具体或提供ClassTag
}。
您还可以分两步完成转换,首先使用JavaConverters
中的asScala
:
import scala.collection.JavaConverters._
然后从Scala API调用.toArray
(与Java的API不同,它保留了类型):
list.asScala.toArray
答案 1 :(得分:0)
以下代码对我有用:
mydata.crypto {
ciphers = [
"TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
"TLS_DHE_RSA_WITH_AES_256_GCM_SHA384"
"TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384"
]
protocols = [
"TLSv1.2"
]
}
val ciphersList = config.getStringList(“ mydata.crypto.ciphers”)
val protocolList = config.getStringList(“ mydata.crypto.protocols”)
导入scala.collection.JavaConverters ._
val enableCiphersList = ciphersList.asScala.toArray
val enableProtocolsList = protocolList.asScala.toArray
现在我们可以看到“ enableCiphersList”和“ enableProtocolsList”是字符串数组类型。