[英]How to convert java list to array in scala?
如何将 java.util.list[POJO] 转换为 Scala 数组[POJO]? 我试过 list.toArray 方法,但它给出了数组 [object]。 任何人都可以帮忙吗?
您必须首先创建目标数组,并将其作为toArray
方法的输入提供:
list.toArray(Array.ofDim[POJO](list.size))
这个 API 将数组实例化的所有问题从toArray
方法转移到你身上,所以你有责任确保POJO
是具体的东西,或者提供一个ClassTag
。
您也可以分两步进行转换,首先使用asScala
的JavaConverters
:
import scala.collection.JavaConverters._
然后从 Scala API 调用.toArray
(与 Java 的 API 不同,它保留类型):
list.asScala.toArray
下面的代码对我有用:
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 = 协议列表.asScala.toArray
现在我们可以看到“enableCiphersList”和“enableProtocolsList”是字符串类型的数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.