Mar*_*ins 6 types scala type-inference
在Scala中,您可以通过指定类型来声明变量,如下所示:(方法1)
var x : String = "Hello World"
Run Code Online (Sandbox Code Playgroud)
或者你可以让Scala自动检测变量类型(方法2)
var x = "Hello World"
Run Code Online (Sandbox Code Playgroud)
为什么要使用方法1?它有性能优势吗?
一旦声明了变量,在方法1或方法2声明的所有情况下,它的行为是否完全相同?
Nic*_*udo 14
类型推断是在编译时完成的 - 它本质上是编译器搞清楚你的意思,填写空白,然后编译生成的代码.
这意味着类型推断不会有运行时成本.在编译时间成本,但是,有时高得惊人,并要求你明确标注你的一些表情.