正在回答
1回答
scala> val sayHelloFunc = (name: String) => println("Hello, " + name) scala> val sayHelloFunc = (name: String) => {println("Hello, " + name)}
这不属于二次赋值,这属于创建了2个新的sayHelloFunc,第2次创建的时候就把之前定义的给覆盖掉了。
这个代码在代码编辑器中会报错的,因为两个函数名称相同,但是scala的命令行下可以支持这种写法。
下面这种写法才是二次赋值,第二次赋值的时候变量a前面没有写val,相当于是对前面定义的a变量的值进行修改,这个执行是会报错的
scala> val a = 1 a: Int = 1 scala> a = 2 <console>:12: error: reassignment to val a = 2
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星