我有以下代碼:斯卡拉強調使用簡化函數文本的語法
var x = Array(1,3,4,4,1,1,3)
var m = Int.MaxValue
x.foreach((x)=>(m = m min x))
我想最後一句簡化爲:
x.foreach((m = _ min m))
但解釋說:
scala> x.foreach((m = _ min m))
<console>:8: error: missing parameter type for expanded function ((x$1) => x$1.min(m))
x.foreach((m = _ min m))
^
我試圖更加明確的類型:
scala> x.foreach((m = (_:Int) min m))
<console>:8: error: type mismatch;
found : (Int) => Int
required: Int
x.foreach((m = (_:Int) min m))
^
編譯器,我不明白對方:(
最好的問候,
斯坦
看起來'='正在分隔表達式。我沒想到會發生這種情況......而且我測試了代碼,但它顯然不起作用,所以我刪除了我的答案。 –