1

我有一个这样的compactBuffer:

CompactBuffer(((8,1.2),((1,1.3),1)), ((8,1.2),((4,1.1),1)), ((8,1.2),((7,2.1),1)), ((8,1.2),((8,1.2),1)), ((8,1.2),((10,1.1),1)))
CompactBuffer(((12,7.2),((3,5.2),1)), ((12,7.2),((12,7.2),1)))
CompactBuffer(((5,3.1),((2,2.7),1)), ((5,3.1),((5,3.1),1)), ((5,3.1),((6,3.2),1)), ((5,3.1),((9,2.2),1)), ((5,3.1),((11,2.8),1)), ((5,3.1),((13,5.1),1)))

如何映射该 compactBuffer 并将一个函数(我对其进行编码)传递到该映射中?提前致谢 !

4

2 回答 2

2

CompactBuffer是一个优化的可变集合,用于保存少量项目。它实现了Seq[T]trait,因此您所有众所周知的Seq操作都可以应用于CompactBuffer.

因此,要转换 的内容CompactBuffermap操作应该可以解决问题:

val v = CompactBuffer(((12,7.2),((3,5.2),1)), ((12,7.2),((12,7.2),1)))
val transf = v.map(tuple => ... )

所有其他收集操作也将起作用:flatMap, filter, take, drop, ...

于 2015-06-07T07:38:21.757 回答
0

如果您的意思是不了解CompactBuffer课程,那么如何:

compactBuffer match {
  case CompactBuffer(data) => yourFunction(data)
}
于 2015-06-06T19:29:58.500 回答