对象在scala中不是值错误 [英] Object is not a value error in scala
问题描述
在尝试在Scala中制作地图时,我收到以下错误消息:对象Map不是值
While trying to make a map in Scala, I receive the following error message: object Map is not a value
代码I '使用如下:
val myStringMap = Map[String, String]("first" -> "A", "second" -> "B", "third" -> "C")
我很难理解为什么我无法创建这个地图,因为在查看Scala文档后,在我看来,我的代码的语法是正确的。
I am quite puzzled as to why I cannot create this map because after looking at Scala documentation, it seems to me that the syntax of my code is proper.
推荐答案
当您看到错误对象不是值时,通常意味着范围内类型是Java类型 - 您可能正在导入 java.util.Map
范围
When you see the error "object is not a value" this typically means that the in-scope type is a Java type - you probably are importing java.util.Map
in scope
scala> Map(1 -> "one")
res0: scala.collection.immutable.Map[Int,java.lang.String] = Map(1 -> one)
但是
scala> import java.util.Map
import java.util.Map
scala> Map(1 -> "one")
<console>:9: error: object Map is not a value
Map(1 -> "one")
^
请记住,在scala中,每个类附带一个(可选)伴侣对象这是一个值。 Java类不是这样。
Remember, in scala each class comes with a (optional) companion object which is a value. This is not true of Java classes.
这篇关于对象在scala中不是值错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!