2014-09-24 46 views

回答

2

如何:

val z = ListBuffer(y: _ *) 

ListBuffer.apply接受元素的可變參數風格的序列。簽名是apply[A](elems: A *): ListBuffer[A]爲了序列適用於這樣的函數,我們使用語法: _ *

+0

很酷,它的工作原理。你可以添加一兩句話來解釋它是如何工作的,我不明白這個構造類型或你正在使用的'*'操作符 – Hamy 2014-09-24 17:24:50

6

的另一種方法是使用to轉換方法:

import scala.collection.mutable.ListBuffer 

val arr: Array[Int] = Array(1, 2, 3, 4) 
val buf: ListBuffer[Int] = arr.to[ListBuffer] 

的變量類型的註釋,當然,多餘的,我已經添加它們只是爲了清晰。

to是非常通用的,它允許任意集合之間的轉換(即,從任何Traversable到任何東西,其具有適當的CanBuildFrom例如在範圍內)。

+0

這真是太神奇了,謝謝你給我看 – Hamy 2014-09-24 18:10:33