【发布时间】:2016-07-07 00:29:02
【问题描述】:
由于各种原因,我有一个 Java 类需要留在 Java 中。它正在调用一个使用 Scala trait 实现的类的方法和一个需要 Scala 不可变映射的 Scala 实现。是的,如果我有 Java Map 并且我正在使用 Scala 代码进行转换,我已经看到了如何使用隐式和显式代码,但是我正在尝试从 Java 代码进行转换并且在 Stack Overflow 上没有看到类似的内容。
我正在使用 Eclipse,该项目添加了 Scala 特性。我尝试导入 scala.collection.JavaConverters,但 Eclipse 只是给了我一个错误,说它找不到该类,即使我在 Scala 库容器中打开 scala-library 时可以看到该类。我正在使用 Scala 2.11.8
如何在 Java 代码中编写将 Java Map 转换为 Scala Map 的显式代码?
【问题讨论】:
-
我通读并尝试重新创建该解决方案。不幸的是,我无法在我的 Java 类中导入任何 Scala 类,我认为这对我来说很奇怪。叹息。
-
对不起,你为什么不能导入任何 scala 类呢?甚至
scala.collection.immutable.Map? -
我希望我知道。但是,是的,即使是 scala.collection.immutable.Map 也不会导入。
-
我想这是 Eclipse 的问题。尝试重新导入项目,看看它是否有效。
-
不,这不是一个好主意,使用 Java 中的 Scala 代码实在是太可怕了……Scala 编译器会生成不适合人类阅读的奇怪名称。从 Scala 中使用 Java 要容易得多,因为 Java 编译器更简单,方法和类的命名规则更严格。只需使用
JavaConversions。
标签: scala