當前位置: 首頁>>技術問答>>正文


Scala編程常見問題整理【十一】

編者按: 本文從stackoverflow收集了Scala編程中的常見問題。基於google/baidu/bing翻譯將問題議成了中文,希望在英語表達不地道(特別是中英文夾雜)的情況下,也能檢索到優質內容入口。     Scala相關問題非常多,我們會陸續將這些問題做成專輯,分成多篇文章分別展現。本文是其中的第十一篇內容。 注: 點擊問題標題直達英文原版網站,點擊 加速訪問 ,可以通過本站加速器快速訪問。


1. 在pyspark中相當於scala.util.Try是什麽?[Scala] (What is the equivalent to scala.util.Try in pyspark?)

pythonapache-spark,pyspark

我有一個糟糕的HTTPD access_log,隻是想跳過“lousy”行。在scala這是很簡單:import scala.util.Tryval log = sc.textFile(“access_log”)log.map(_。split(’ ‘))。map(a =&…

2. 單例作為合成類在Scala?[Scala] (Singletons as Synthetic classes in Scala?)

scala

我正在閱讀Scala中的Programming,我不明白以下句子(pdf p.112):每個singleton對象被實現為從靜態引用的合成類的實例…

3. 我如何區分def foo [A](xs:A *)和def foo [A,B](xs:(A,B)*)?[Scala] (How can I differentiate between def foo[A](xs: A*) and def foo[A, B](xs: (A, B)*)?)

method-overloading,type-erasure

我知道類型擦除使它們看起來平等,在運行時,類型的,所以:class Bar {def foo [A](xs:A *){xs.foreach(println)} def foo [A,B] xs:(A,B)*){xs.foreach(x => println(…)

4. scala:’def foo = {1}’vs’def foo {1}'[Scala] (scala: ‘def foo = {1}’ vs ‘def foo {1}’)

methods

在這些形式的每一個定義foo?:scala> def foo = {1} foo:Intscala> foores2:Int = 1But:scala> def foo {1} foo:Unitscala> fooscala>

5. 如何禁止sbt中的信息和成功消息?[Scala] (How to suppress info and success messages in sbt?)

sbt

當我做sbt運行我看到一些頭和腳信息,我想擺脫:$ sbt run [info]將當前項目設置為XXX(在構建文件:/ path / to / dir /)<實際程序輸出這裏; … …

6. 在Scala中,如何為Java中定義的類定義一個隨播對象?[Scala] (In Scala, how can I define a companion object for a class defined in Java?)

implicit-conversion,scala-java-interop,companion-object

我想向由建模工具生成的Java類添加隱式轉換。所以我想將它們添加到這些類的伴隨對象,以便編譯器自動找到它們。但是我 …

7. 如何比較Scala函數值的相等性[Scala] (How to compare Scala function values for equality)

scala

如何比較兩個Scala函數值的相等性。用例是,我有一個函數列表,其中列表可以包含重複,我隻想執行每個函數一次。如果我…

8. Scala方法將一個iterable的每個元素與另一個的每個元素相結合?[Scala] (Scala method to combine each element of an iterable with each element of another?)

scala-collections,cartesian-product

如果我有這個:val a = Array(“a”,“b”,“c”)val b = Array(“x”,“y”)我想知道如果這樣的方法存在,第一個集合,以及每個元素的…

9. 使用Scala查找素數。幫助我改善[Scala] (Find prime numbers using Scala. Help me to improve)

algorithmfunctional-programming,primes

我寫了這個代碼,以找到小於給定數字i的素數在scala.def findPrime(i:Int):List [Int] = i match {case 2 => List(2)case _ => {val primeList = … …

10. 如何獲取Spark中的地圖任務的ID?[Scala] (How to get ID of a map task in Spark?)

hadoop,apache-spark,yarn

有沒有辦法獲取地圖任務在Spark中的ID?例如,如果每個map任務調用一個用戶定義的函數,我可以從用戶定義的函數中獲取該map任務的ID?

11. SBT dependsOn RootProject:不編譯依賴項[Scala] (SBT dependsOn RootProject: doesn’t compile the dependency)

playframework-2.0,sbt,banana-rdf

我有一個很簡單的配置:// lazy val bananaRdfProject = RootProject(uri(“git://github.com:stample / banana-rdf.git#”+ bananaGitBranch))// lazy val bananaRdfProject = RootProject … …

12. JProgressBar在JTable中不更新[Scala] (JProgressBar in JTable not updating)

java,swingjtable,jprogressbar

為什麽下麵代碼中的進度條不更新,我如何得到它們?import java.awt.event。{ActionListener,ActionEvent} import javax.swing.table。{TableCellRenderer,…

13. 壓縮多個序列[Scala] (Zip multiple sequences)

tuples

我試圖壓縮多個序列以形成一個長元組:val ints = List(1,2,3)val chars = List(’a’,’b’,’c’)val strings = List(“Alpha” “Beta”,“Gamma”)val bools = List(true,false,false)…

14. 將元數據附加到Spark中的向量列[Scala] (Attach metadata to vector column in Spark)

apache-spark,apache-spark-mllib,apache-spark-ml

上下文:我有一個數據框架,有兩列:label和features.org.apache.spark.sql.DataFrame = [label:int,features:vector]其中features是一個mllib.linalg.VectorUDT的數字類型構建.. 。

15. 為什麽在Scala中用`def`重寫`var`是不可能的?[Scala] (Why it’s impossible to override `var` with `def` in Scala?)

immutability,lsp,mutability,uap

雖然我明白為什麽一個var不能覆蓋子類中的val,反之亦然,我不能理解為什麽Scala不允許在子類中的def重寫超類中的一個var Car {var …

16. Scala Spark:將集合拆分成幾個RDD?[Scala] (Scala Spark: Split collection into several RDD?)

apache-spark

是否有任何Spark函數允許根據一些creteria將集合拆分成幾個RDD?這種功能將允許避免過度的反複。例如:def main(args:Array […

17. Scala類型參數錯誤,不是類型參數的成員[Scala] (Scala type parameter error, not a member of type parameter)

scala

我試圖在Scala中實現一個通用適配器Android。這些是我的類:class ScalaAdapter [A <:AnyRef](context:Context,resource:Int,objectsList:ArrayBuffer [A],adapterCb:…

18. 如何訪問Spark RDD基於索引的元素數組[Scala] (How to access Spark RDD Array of elements based on index)

arraysapache-spark

我有一個RDD與數組的元素,如下所示,每個元素可以被視為元組,現在的問題是我隻想訪問第一個兩個元組的第四個元素..並循環通過這個RDDArray [(Int,…

19. Spark在stdout上丟失println()[Scala] (Spark losing println() on stdout)

apache-spark,println,accumulator

我有以下代碼:val blueCount = sc.accumulator [Long](0)val output = input.map {data => for(value < – data.getValues()){if(record.getEnum()== DataEnum 。藍色) { …

20. Spark streaming:緩存多個批處理的DStream結果[Scala] (Spark streaming: Cache DStream results across batches)

apache-spark,spark-streaming

使用Spark stream(1.6)我有一個filestream用於讀取2s的批量大小的查找數據,但是文件隻是每小時複製到目錄。一旦有一個新文件,其內容被讀取…

21. 如何在Windows上訪問Spark中的本地文件?[Scala] (How to access local files in Spark on Windows?)

windowsapache-spark

我在Windows上使用Spark。我知道在* nix,訪問本地文件代碼喜歡這樣:val textFile = sc.textFile(“file:///usr/local/spark/README.md”)但是如何在Windows上訪問本地文件?一世 …

22. 良好的scalaz介紹[關閉][Scala] (Good scalaz introduction [closed])

scalaz

最近scalaz抓住了我的眼睛。它看起來很有趣,但我還沒有找到任何良好的圖書館介紹。看來,scalaz融合了很多來自haskell和數學的想法。最多…

23. 登錄Scala[Scala] (Logging in Scala)

logging

什麽是在Scala應用程序中進行日誌記錄的好方法?與語言哲學一致的東西,不會使代碼混亂,並且維護性低,不引人注意。這裏有一個基本的…

24. scala中Array和List之間的差異[Scala] (Difference between Array and List in scala)

arrays,listscala-collections

在什麽情況下,我應該使用Array(Buffer)和List(Buffer)。隻有一個區別,我知道是數組是非變量和列表是協變的。但是性能和其他一些…

25. 與連接符的模式匹配(PatternA AND PatternB)[Scala] (Pattern matching with conjunctions (PatternA AND PatternB))

pattern-matching

Scala有一個語言功能來支持模式匹配(’Pattern Alternatives’)中的析取:x match {case _:String | _:Int => case _ =>}但是,我經常需要觸發…

26. 創建Scala列表的首選方式[Scala] (Preferred way to create a Scala list)

scala

在Scala中有幾種方法來構造一個不可變的列表(見下麵的示例代碼)。你可以使用一個可變的ListBuffer,創建一個var列表並修改它,使用尾遞歸方法,…

27. 聲明Scala case類有什麽缺點?[Scala] (What are the disadvantages to declaring Scala case classes?)

case-class

如果你編寫的代碼使用了大量的美麗的,不可變的數據結構,case類似乎是一個天才,隻用一個關鍵字給你所有以下免費的:Everything …

28. scala.concurrent.Promise的用例是什麽?[Scala] (What are the use cases of scala.concurrent.Promise?)

concurrency

我正在閱讀SIP-14,Future的概念是完美的,容易理解。但有兩個關於承諾的問題:SIP說根據實現,可能是這樣的情況。

29. 計算列表的移動平均值[Scala] (Calculating the Moving Average of a List)

functional-programming,clojure

這個周末,我決定嘗試我的手在一些Scala和Clojure的。我精通麵向對象編程,所以斯卡拉很容易拿起作為一種語言,而是想嘗試的功能…

30. 什麽是最好的Scala構建係統? [關閉][Scala] (What’s the best Scala build system? [closed])

eclipsebuild

我在這裏看到關於IDE的問題 – 哪個是Scala開發的最佳IDE?和什麽是Scala的工具的當前狀態,但我已經與IDEs混合的經驗。現在,我使用…

31. 使用maven構建一個scala應用程序(其中混入了java源)[Scala] (Building a scala app with maven (that has java source mixed in))

java,maven-2

我有一個應用程序,我想有混合的Java和Scala源(實際上是將一個java應用程序遷移到scala – 但有一點時間)。我可以使這項工作在IDEs隻是罰款,非常好。 … …

32. forall在Scala[Scala] (forall in Scala)

haskell,forall

如下所示,在Haskell中,可以在列表中存儲具有異類類型的值,並在其上包含某些上下文邊界:data ShowBox = forall s。顯示s => ShowBox sheteroList :: […

33. 在哪裏可以學到構建AST的Scala宏?[Scala] (Where can I learn about constructing AST’s for Scala macros?)

macros,scala-macros

在哪裏我可以學習如何構建的Scala的宏生成的AST?Scaladoc不是有用的,我想。例如:abstract def Apply(sym:Universe.Symbol,args:Universe.Tree *):…

34. 如何等待幾個期貨[Scala] (How to wait for several Futures)

concurrency,future

假設我有幾個未來,需要等到任何一個失敗或所有的成功。例如:讓有3個期貨:f1,f2,f3。如果f1成功,f2失敗,我不等待…

35. Scala:List [Future] to Future [List]忽略失敗的未來[Scala] (Scala: List[Future] to Future[List] disregarding failed futures)

future

我正在尋找一種方法來將任意長度的未來列表轉換為列表的未來。我使用Playframework,所以最終,我真正想要的是一個未來[結果],但要使事情更簡單,…

36. 如何在Scala中排序數組?[Scala] (How do I sort an array in Scala?)

sorting

我可以看到有一個排序對象,排序,使用quicksort方法,quickSort,對它。什麽是使用它,排序任意類型的對象的數組的代碼示例?看起來我需要…

37. 在Scala中將元素追加到列表的結尾[Scala] (Appending an element to the end of a list in Scala)

arrays

這聽起來像一個愚蠢的問題,但我在互聯網上發現的所有是trash.I隻是不能添加一個類型T的元素到列表List [T]。我嘗試myList :: = myElement但它似乎它創建一個… …

38. 在純函數編程語境中的麵向對象編程?[Scala] (Object-oriented programming in a purely functional programming context?)

oophaskell,f#,functional-programming

在功能編程(FP)上下文中使用麵向對象編程(OOP)有什麽優點嗎?我已經使用F#一段時間了,我注意到我的功能越多…

39. 從宏中獲取具有匿名類方法的結構類型[Scala] (Getting a structural type with an anonymous class’s methods from a macro)

macros,scala-2.10,structural-typing,scala-macros

假設我們要寫一個宏,它定義了一個帶有某些類型成員或方法的匿名類,然後創建一個類的實例,該類的靜態類型是這些類的結構類型:

40. 如何在Scala中設置多個類型邊界?[Scala] (How do I setup multiple type bounds in Scala?)

generics

我想要能夠聲明這樣的東西:trait Narrowable [A] extends Iterable [A] {def narrow [B <:A&B <:AnyRef]:Iterable [B]}它,類型B應該是一個 …

41. 如何在Scala中將Map [Int,Any]轉換為SortedMap?還是一個TreeMap?[Scala] (How do I convert a Map[Int, Any] to a SortedMap in Scala? Or a TreeMap?)

scala

我想將一個Map [Int,Any]轉換為SortedMap或TreeMap。有一個簡單的方法嗎?

42. 如何在IntelliJ中查看scala表達式的類型[Scala] (How do I view the type of a scala expression in IntelliJ)

intellij-idea

Eclipse scala插件有一個很好的功能,當你將鼠標懸停在它上麵時,它會顯示一個變量的類型。如何使用IntelliJ插件查看相同的信息?

43. Scala 2.10 + Json序列化和反序列化[Scala] (Scala 2.10 + Json serialization and deserialization)

jsonscala-2.10,lift-json

Scala 2.10似乎已經打破了一些老圖書館(至少在當時),如Jerkson和lift-json。目標可用性如下:case類Person(name:String,height:…

44. Scala中的私人和受保護的構造函數[Scala] (Private and protected constructor in Scala)

scala

我一直好奇沒有一個顯式的主要構造函數在Scala,隻是類body的內容的影響。特別是,我懷疑私有或受保護的構造函數…

45. 如何在Scala中將文件讀取為字節數組[Scala] (How to read a file as a byte array in Scala)

io,bytearray

我可以找到噸的例子,但他們似乎要麽主要依賴於Java庫或隻是讀取字符/行/等。我隻想讀取一些文件,並獲得一個字節數組與scala庫 – 可以…

46. 為什麽Scala的類型推理不像Haskell的強大?[Scala] (Why is Scala’s type inference not as powerful as Haskell’s?)

haskell,type-inference

Haskell的類型推理機比Scala的強大得多。在Haskell中,我很少需要顯式寫入類型,而在Scala中,類型隻能在表達式中推斷,但不能…

47. 如何強製Logger.debug輸出在Play!框架specs2測試?[Scala] (How to force Logger.debug output in Play! framework specs2 tests?)

playframework,playframework-2.0,specs2

默認情況下,所有Logger輸出,在應用程序運行時可見,在測試應用程序時是靜音的。如何強製調試,信息等在specs2報告中顯示?

48. 使用簡單構建工具製作獨立jar[Scala] (Making stand-alone jar with Simple Build Tool)

sbt

有沒有辦法告訴sbt將所有需要的庫(scala-library.jar)打包到主包中,因此它是獨立的? (靜態的?)

49. 在Scala中使用符號的實際示例?[Scala] (Practical examples of using symbols in Scala?)

symbols

Scala有符號 – 以單引號開頭的名稱,它們是一種字符串常量。我知道Ruby中的符號(它們以冒號開頭)。在Ruby中,它們用於一些元。

50. 集合,函子和等式混淆[Scala] (Sets, Functors and Eq confusion)

haskell,equality,functor

最近關於Sets的討論,在Scala支持zip方法和如何可以導致錯誤,egscala> val words = Set(“one”,“two”,“three”)scala> words zip詞語…

本文由《純淨天空》出品。文章地址: https://vimsky.com/zh-tw/article/1584.html,未經允許,請勿轉載。