2016-01-22 48 views
0

我试图解决一个问题,即我通过pipe.To所有值都具有循环模拟我的问题,我是通过抽样问题遍历richPipe值:烫伤

Input file : 
    number 
    1 
    2 
    3 
    4 


    Output should be 
    number sumOfSmaller 
    1  0    
    2  1    
    3  3 
    4  6 

所以对于每个值解释我必须读取管道中的所有记录并应用函数sumOfSmaller。 我不知道如何循环滚动管道中的值。 使用地图我可以申请列表中的每个元素的功能,但我想避免这种计算策略

回答

0

你可以得到整个管的内容与 val wholePipe = pipe.groupAll.toList,然后用自己加入,并应用功能:pipe.groupAll.join(wholePipe).values.map { case (x, list) => sumOfSmaller(x, list) }

虽然这不是一个好主意,但是如果你的烟斗尺寸合适的话。知道更多关于你真正想要做什么的细节几乎肯定会允许更好的方法。