2015-06-06 3 views
1

У меня есть compactBuffer вроде этого:Как я могу отобразить compactBuffer в Graphx

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 и передать функцию (этот код я его) в этой карте? Спасибо заранее!

ответ

0

Если вы имеете в виду без знания CompactBuffer класса, как об этом:

compactBuffer match { 
    case CompactBuffer(data) => yourFunction(data) 
} 
2

CompactBuffer оптимизированных изменяемая коллекция для хранения нескольких элементов. Он реализует признак Seq[T], поэтому все ваши известные операции Seq можно применить к CompactBuffer.

Таким образом, чтобы преобразовать содержимое в CompactBuffer, map операция должна сделать трюк:

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, ...