je le code suivant:Scala soulignent l'utilisation pour simplifier la syntaxe des littéraux de fonction
var x = Array(1,3,4,4,1,1,3)
var m = Int.MaxValue
x.foreach((x)=>(m = m min x))
J'ai essayé de simplifier la dernière phrase:
x.foreach((m = _ min m))
Mais l'interprète dit:
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))
^
J'ai essayé d'être plus explicite sur le type:
scala> x.foreach((m = (_:Int) min m))
<console>:8: error: type mismatch;
found : (Int) => Int
required: Int
x.foreach((m = (_:Int) min m))
^
Le compilateur et je ne comprends pas l'autre :(
Meilleures salutations,
Stan
Il semble que '=' délimite l'expression. Je ne m'attendais pas à ce que cela se produise ... Et j'ai _did_ testé le code, mais il ne fonctionne évidemment pas, alors j'ai supprimé ma réponse. –