【问题标题】:Scala can't convert Java map keySet to a Sequence typeScala 无法将 Java 映射 keySet 转换为 Sequence 类型
【发布时间】:2018-11-18 00:58:44
【问题描述】:

我有以下 Scala 代码:

import collection.JavaConverters._

val threads : Seq[Thread] = Thread.getAllStackTraces().keySet().asScala

这会产生以下编译器错误:

"mutable.Set[Thread] 类型的表达式不符合预期的 Seq[Thread] 类型。"

这里有什么解决办法?

【问题讨论】:

  • 如果您需要Seq,可以使用toSeq,如Thread.getAllStackTraces().keySet().asScala.toSeq

标签: java scala collections


【解决方案1】:

keySet 返回一个集合,因此asScala 将转换为 Scala 集合。移除返回类型。

val threads = Thread.getAllStackTraces().keySet().asScala

如果您确实需要Seq,请添加toSeq

val threads = Thread.getAllStackTraces().keySet().asScala.toSeq

【讨论】:

    猜你喜欢
    • 2013-05-30
    • 2017-05-23
    • 1970-01-01
    • 1970-01-01
    • 2017-03-10
    • 2020-01-05
    • 1970-01-01
    • 1970-01-01
    • 2011-10-23
    相关资源
    最近更新 更多