我有
var a = List (1,2,3,4,5)
a.map( e => if(e%2==0) (e*2) else (**))
** =在这个地方,我只想使用已更新的值
我该怎么做?
答案 0 :(得分:1)
这应该可以解决问题
val a = List(1,2,3,4)
val r = a.foldLeft(List[Int]()){
(l, e) => if(e % 2 == 0) e :: l else (l.fold(0)(math.max(_, _))) :: l
}.reverse