我一直在尋找一點時間,如何將ArrayBuffer
轉換爲Set
,HashSet
我想是準確的。任何提示?scala:如何將ArrayBuffer轉換爲Set?
回答
有一個toSet
函數中實現ArrayBuffer
實施例:
scala> import collection.mutable.ArrayBuffer
import collection.mutable.ArrayBuffer
scala> import collection.immutable.HashSet
import collection.immutable.HashSet
scala> val a = new ArrayBuffer(2)
a: scala.collection.mutable.ArrayBuffer[Nothing] = ArrayBuffer()
scala> val b = a.toSet
b: scala.collection.immutable.Set[Nothing] = Set()
瘋了,我看着scaladoc但錯過了它和日食並不想自動完成我的最後一個數組,以便能夠弄清楚如何轉換它 非常感謝 – 2012-02-01 22:46:06
來設置:
scala> val bf = ArrayBuffer(1,2,3,4)
bf: scala.collection.mutable.ArrayBuffer[Int] = ArrayBuffer(1, 2, 3, 4)
scala> bf.toSet
res0: scala.collection.immutable.Set[Int] = Set(1, 2, 3, 4)
要HashSet的:
scala> val hs = new HashSet[Int]++ bf.toSet
hs: scala.collection.immutable.HashSet[Int] = Set(1, 2, 3, 4)
+1好的答案,但不是那些行錯誤的順序? – DNA 2012-02-01 22:36:21
@DNA是的,他們是:)我糾正了那個錯誤 – 2012-02-01 22:37:37
第二個例子是多餘的。它們幾乎完全相同,除了'toSet'將少於5個元素用於'Set's而不是'HashSet'的特殊類:'ArrayBuffer(1,2,3,4).toSet.isInstanceOf [ HashSet [_]] == false','ArrayBuffer(1,2,3,4,5).toSet.isInstanceOf [HashSet [_]] == true' – soc 2012-02-02 14:07:09
爲了完整起見,還有一種方法:
scala> import collection.mutable.ArrayBuffer
import collection.mutable.ArrayBuffer
scala> val as = ArrayBuffer(34, 89, 11)
as: scala.collection.mutable.ArrayBuffer[Int] = ArrayBuffer(34, 89, 11)
scala> Set(as: _*)
res13: scala.collection.immutable.Set[Int] = Set(34, 89, 11)
我試過這個Set(array:_ *),但由於某些原因它沒有工作。很高興看到它應該有:) – 2012-02-03 23:30:13
- 1. 如何將arraybuffer轉換爲字符串
- 2. 如何將arrayBuffer轉換爲mp3音頻?
- 3. 將Seq轉換爲ArrayBuffer
- 4. 將AudioBuffer轉換爲ArrayBuffer
- 5. 將嵌套的ArrayBuffer轉換爲嵌套數組在scala中
- 6. 爲什麼Scala的toSeq將一個不可變的Set轉換爲一個可變的ArrayBuffer?
- 7. 如何將defaultdict(Set)轉換爲defaultdict(list)?
- 8. 如何將NSArray轉換爲Set?
- 9. 將字節[]轉換爲Nashorn中的ArrayBuffer
- 10. 在ArrayList中將ArrayBuffer轉換爲int
- 11. Scala如何將JsonAST.JValue轉換爲類型?
- 12. 如何將Scala代碼轉換爲Scheme?
- 13. Scala,Casbah - 如何將List轉換爲MongoDBList?
- 14. 如何將java流轉換爲scala流?
- 15. 如何將Java TreeMap轉換爲Scala SortedMap?
- 16. 如何將Java Iterable轉換爲Scala Iterable?
- 17. 如何將Scala特徵轉換爲java?
- 18. 如何有效地將THREE.Geometry轉換爲ArrayBuffer,File或Blob?
- 19. 如何將從JQuery.get下載的數據轉換爲ArrayBuffer?
- 20. Scala:將org.w3c.dom.Document轉換爲scala.xml.NodeSeq
- 21. 將Scala轉換爲Java(java.util.Set)?
- 22. SCALA:如何將一個Parser Combinator結果轉換爲Scala List [String]?
- 23. Scala Slick如何將Scala代碼轉換爲JDBC?
- 24. 如何將Apache Scala中的Scala UDF轉換爲Java版本?
- 25. 如何使用Scala將普通類轉換爲JSON並將其轉換爲JSON?
- 26. ArrayBuffer vs ArrayBuilder in scala
- 27. OCaml - 將Set轉換爲字符串
- 28. 如何在Scala中拼合ArrayBuffer
- 29. 瞭解AudioBuffer以ArrayBuffer轉換
- 30. 爲什麼scala將Seq轉換爲List?
搜索是您在scaladoc上的朋友。如果你在方法列表中鍵入「set」,你會得到一個13個方法的列表,在那裏更容易找到'toSet'。 – 2012-02-02 14:23:25