Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 威尔';val';生成可变数据?_Scala - Fatal编程技术网

Scala 威尔';val';生成可变数据?

Scala 威尔';val';生成可变数据?,scala,Scala,在REPL中键入以下命令时 scala> val p = 1 << 1 p: Int = 2 scala>val p=1 val p=1此行为仅出现在REPL中。如果您尝试在Scala代码中两次定义val,您将得到编译错误。在REPL中,val的第二个定义只是对p的上一个值进行了阴影处理,如上所述,在REPL中,您可以覆盖val。试想一下,如果在IDE中键入一个可以修复的值时出错,在REPL中如何修复?您需要关闭会话吗?您没有分配给p。您正在声明一个完全不同的新p。感谢大家的

在REPL中键入以下命令时

scala> val p = 1 << 1
p: Int = 2

scala>val p=1 val p=1此行为仅出现在REPL中。如果您尝试在Scala代码中两次定义val,您将得到编译错误。在REPL中,val的第二个定义只是对p的上一个值进行了阴影处理,如上所述,在REPL中,您可以覆盖val。试想一下,如果在IDE中键入一个可以修复的值时出错,在REPL中如何修复?您需要关闭会话吗?

您没有分配给
p
。您正在声明一个完全不同的新
p
。感谢大家的帮助:)
scala> val p = 1 << 2
p: Int = 4