0
与相同的语义内涵给定两个尚未不同的声明,说明它考虑斯卡拉内涵性能相比
for (i <- 1 to n) yield { if (i % 2 == 0) 0 else 1 }
和
for { i <- 1 to n
m = if (i % 2 == 0) 0 else 1
} yield m
该声明证明更有效的,否则无论有没有尽管if-else
表达式声明有显着的性能差异?
岂不第二翻译的东西只是语法糖例如:'(1 to n).map {n => {val m = if(i%2 == 0)0 else 1;米}}'? – Kigyo
@Kigyo好点。但我想象编译器会为你内联。我可能会玩耍,明天看看编译器的输出 –