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


Scala編程常見問題整理【二】

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


1. 在更新後的HTML內容通過Javascript更新後獲取? (htmlunit)[Scala] (Get the changed HTML content after it’s updated by Javascript? (htmlunit))

javahtmlunit

我有一些麻煩,弄清楚如何獲取一些HTML的內容,javascript後更新它。具體來說,我想從美國海軍天文台主時鍾獲取當前時間。它…

2. 在scala中使用def,val和var[Scala] (Use of def, val, and var in scala)

scala

類Person(val name:String,var age:Int)def person = new Person(“Kumar”,12)person.age = 20println(person.age)這些行代碼輸出12,即使person.age = 20成功執行。 … …

3. 為什麽“避免方法重載”?[Scala] (Why “avoid method overloading”?)

method-overloading

為什麽Jorge Ortiz建議避免方法重載?

4. Scala的懶惰val的(隱藏)成本是多少?[Scala] (What’s the (hidden) cost of Scala’s lazy val?)

performancelazy-evaluation

Scala的一個方便的特性是延遲val,其中val的評估被延遲,直到它有必要(在第一次訪問)。當然,一個惰性的val必須有一些開銷 – Scala必須保持…

5. Scala foreach奇怪的行為[Scala] (Scala foreach strange behaviour)

scala

例如,這個工作很好:scala> val x = List(1,2,3,4)x:List [Int] = List() 1,2,3,4)scala> x foreach …

6. Scala的所有符號運算符是什麽意思?[Scala] (What do all of Scala’s symbolic operators mean?)

operators

Scala語法有很多符號。由於這些種類的名稱很難找到使用搜索引擎,一個完整的列表,他們將是有益的。什麽是Scala中的所有符號,什麽…

7. 什麽是Scala賦值賦值給Unit而不是賦值的動機?[Scala] (What is the motivation for Scala assignment evaluating to Unit rather than the value assigned?)

functional-programming,io,assignment-operator

Scala賦值的動機是什麽,而不是分配的值?在I / O編程中的一個常見模式是做這樣的事情:while((bytesRead = in.read(buffer))!= -…

8. 如何在Spark SQL中定義和使用用戶定義的聚合函數?[Scala] (How to define and use a User-Defined Aggregate Function in Spark SQL?)

apache-spark,apache-spark-sql

我知道如何在Spark SQL中寫一個UDF:def belowThreshold(power:Int):Boolean = {return power <-40)sqlContext.udf.register(“belowThreshold”,belowThreshold _

9. Scala的case類和類之間有什麽區別?[Scala] (What is the difference between Scala’s case class and class?)

functional-programming,case-class

我在Google中搜索以找到案例類和類之間的差異。每個人都提到當你想對類做模式匹配時,使用case類。否則使用類和…

10. Scala中對象和類之間的區別[Scala] (Difference between object and class in Scala)

class,object

我隻是在互聯網上的一些Scala教程,並注意到,在一些示例中,一個對象在示例開始時聲明。在Scala中類和對象之間的區別是什麽?

11. 使用抽象類而不是traits的優點是什麽?[Scala] (What is the advantage of using abstract classes instead of traits?)

traits

使用抽象類而不是性狀(除了性能)的優點是什麽?在大多數情況下,抽象類可以被trait替換。

12. 如何在Scala中打破一個循環?[Scala] (How do I break out of a loop in Scala?)

for-loop,break,tail-recursion

我如何打破一個循環?var largest = 0for(i <-999到1 by -1){for(j <-i to 1 by -1){val product = i * j if(largest> product)/ /我想在這裏突破…

13. “def”和“val”之間的區別是定義一個函數[Scala] (What is the difference between “def” and “val” to define a function)

scala

有什麽區別:def even:Int => Boolean = _%2 == 0and val even:Int => Boolean = _%2 == 0可以調用even(10)。

14. 如何sbt從git拉從依賴項工件?[Scala] (How can sbt pull dependency artifacts from git?)

gitbuild,sbt,build-dependencies

我聽說過(和我知道我也看到的例子,如果隻有我可以記得在哪裏)sbt可以從一個git repo.獲取依賴關係從我從github獲取依賴關係harrah / up。 … …

15. 類Option [T]的意義是什麽?[Scala] (What is the point of the class Option[T]?)

javanull,functional-programming,monads

我不能理解Scala中Option [T]類的要點。我的意思是,我不能看到無超過null的任何優勢。例如,考慮代碼:object Main {class Person(name:…

16. 如何覆蓋在案例類隨播廣告中應用[Scala] (How to override apply in a case class companion)

pattern-matching,case-class

所以這裏的情況。我想定義一個case類像這樣:case class A(val s:String),我想定義一個對象,以確保當我創建類的實例,’s’的值是…

17. “eval”在Scala[Scala] (“eval” in Scala)

javascripting,embedding

可以使用Scala來編寫Java應用程序嗎?我需要從Java加載一段Scala代碼,為其設置一個執行範圍(主機應用程序公開的數據),評估它並檢索…

18. 如何在Spark SQL中定義自定義類型的模式?[Scala] (How to define schema for custom type in Spark SQL?)

apache-spark,apache-spark-sql,case-class

以下示例代碼嘗試將一些案例對象放入數據幀。代碼包括case對象層次結構的定義和使用此trait的case類:import org.apache.spark。{…

19. Apache Spark中的案例類相等[Scala] (Case class equality in Apache Spark)

apache-spark,pattern-matching,case-class

為什麽Spark中的模式匹配與Scala中的不匹配?參見下麵的示例… function f()嘗試對類進行模式匹配,它在Scala REPL中工作,但在Spark中失敗,並導致…

20. 在Scala中def foo = {}和def foo()= {}之間有什麽區別?[Scala] (What is the difference between def foo = {} and def foo() = {} in Scala?)

programming-languages,functional-programming,jvm,jvm-languages

給定以下用於在Scala中定義函數的構造,你能解釋什麽區別是什麽,會有什麽影響?def foo = {} vsdef foo()= {} UpdateThanks for …

21. Akka的好用例[關閉][Scala] (Good use case for Akka [closed])

javaasynchronous,use-case,akka

我聽到很多關於Akka框架(Java / Scala服務平台)的狂熱,但到目前為止還沒有看到很多實例的用例,它是有益的。所以我會有興趣聽…

22. 我應該在Scala中什麽時候選擇Vector?[Scala] (When should I choose Vector in Scala?)

vector,scala-collections

看起來Vector是遲到的Scala收集方,所有有影響的博客帖子已經離開。在Java ArrayList是默認集合 – 我可能使用LinkedList,但隻有當我’

23. 在任意scala代碼位置放入解釋器[Scala] (Drop into interpreter during arbitrary scala code location)

debugginginterpreter

我來自一個Python背景,在任何時候,我的代碼我可以addimport pdb; pdb.set_trace()和在運行時我會被放到一個交互式解釋器。有…

24. (為什麽)我們需要調用緩存或堅持RDD[Scala] ((Why) do we need to call cache or persist on a RDD)

apache-spark,rdd

當從文本文件或集合(或從另一個RDD)創建彈性分布式數據集(RDD)時,是否需要明確調用“緩存”或“持久”以將RDD數據存儲到內存中?或者是…

25. Scala中的類型類有用嗎?[Scala] (What are type classes in Scala useful for?)

implicit

正如我從這個博客文章中所理解的“類型類”在Scala隻是一個“模式”實現traits和隱式adapter.As博客說如果我有trait A和適配器B – > A然後我可以…

26. do scala構造函數參數默認為私有val?[Scala] (Do scala constructor parameters default to private val?)

scala-primary-constructor

我一直在嘗試:class Foo(bar:Int)vs:class Foo(private val bar:Int)和他們似乎行為相同,雖然我不能找到任何地方說(bar:Int)擴展到:…

27. Scala等效於Java java.lang.Class Object[Scala] (Scala equivalent of Java java.lang.Class Object)

java,class

問題最好通過一個例子來解釋:在JPA EntityManager的Java中,我可以做以下(Account是我的Entity類):Account result = manager.find(Account.class,primaryKey);在Scala中,…

28. Scala期貨 – 內建超時?[Scala] (Scala Futures – built in timeout?)

concurrency

有一個方麵的未來,我不完全明白從官方教程參考。 http://docs.scala-lang.org/overviews/core/futures.html在scala中的期貨有一個內置的超時…

29. 在Java中使用Scala traits和已實現的方法[Scala] (Using Scala traits with implemented methods in Java)

javascala-java-interop

我想這是不可能調用方法實現在Scala traits從Java,或有辦法嗎?假設我在Scala:trait Trait {def bar = {}}和在Java如果我使用它作為類…

30. 如何在spark中將rdd對象轉換為dataframe[Scala] (How to convert rdd object to dataframe in spark)

apache-spark,spark-dataframe,rdd

如何將RDD(org.apache.spark.rdd.RDD [org.apache.spark.sql.Row])轉換為Dataframe org.apache.spark.sql.DataFrame。我使用.rdd將數據幀轉換為rdd。處理後,我想要它…

31. 在Scala方法調用中括號的規則是什麽?[Scala] (What is the rule for parenthesis in Scala method invocation?)

scala

不是toList一個方法,將某些東西轉換為List?如果是,那麽為什麽我不能使用括號?我必須缺少一些更基本的在這裏。這是例子:val l = Array(1,2,3)…

32. 使用新的Scala反射API獲取隨播廣告對象實例[Scala] (Get companion object instance with new Scala reflection API)

reflection

使用Scala的新反射API,是否可以獲得對類的伴侶對象的引用?我正在思考這樣的東西:trait Base {def companion:MetaBase = …

33. 將Scala列表轉換為元組?[Scala] (Convert a Scala list to a tuple?)

listtuples

我如何將一個列表與(說)3個元素轉換為一個大小為3的元組?例如,我有val x = List(1,2,3),我想把它轉換為(1,2,3 )。我如何做到這一點?

34. 在Scala 2.10中通過反射找到類型參數?[Scala] (Finding type parameters via reflection in Scala 2.10?)

reflection,scala-2.10

使用類型標簽,我可以看到一些類型的參數:scala> import scala.reflect.runtime.universe._import scala.reflect.runtime.universe._scala> typeOf [List [Int]] res0:reflect .. … ..

35. Scala:為什麽mapValues產生一個視圖,並有任何穩定的替代品?[Scala] (Scala: Why mapValues produces a view and is there any stable alternatives?)

map

剛才我驚訝地得知,mapValues產生一個視圖。結果如下例所示:case class thing(id:Int)val rand = new java.util.Randomval distribution = Map(…

36. 嘗試將數據幀行映射到更新的行時出現編碼器錯誤[Scala] (Encoder error while trying to map dataframe row to updated row)

apache-spark,apache-spark-sql,apache-spark-dataset

當我試圖做同樣的事情在我的代碼如下所述dataframe.map(row => {val row1 = row.getAs [String](1)val make = if(row1.toLowerCase ==“tesla”)“S “else row1 Row(row(0)…

37. Scala中的apply函數是什麽?[Scala] (What is the apply function in Scala?)

scala

我從來沒有理解它從設計的unmarshalling和verbing名詞(一個AddTwo類有一個應用程序,添加兩個!)examples.I理解它是語法糖,所以(我從上下文推導)…

38. 如何建模類型安全的枚舉類型?[Scala] (How to model type-safe enum types?)

enums

Scala沒有類型安全的枚舉,如Java。給定一組相關的常量,在Scala中表示這些常量的最好方法是什麽?

39. 如何使用標準Scala類在Scala中解析JSON?[Scala] (How to parse JSON in Scala using standard Scala classes?)

json

我在Scala 2.8中使用JSON類中的構建來解析JSON代碼。我不想使用Liftweb一個或任何其他由於最小化依賴關係。我的方式,我的做法似乎太必要,是…

40. Scala列表連接,::: vs ++[Scala] (Scala list concatenation, ::: vs ++)

listconcatenation

在Scala中連接列表的:::和++之間有什麽區別?scala> List(1,2,3)++ List(4,5)res0:List [Int] = List(1,2,3, 4,5)scala> List(1,2,3)::: List(4,5)res1:List […

41. 我可以在Android Dalvik上使用哪些編程語言?[Scala] (Which programming languages can I use on Android Dalvik?)

java,python,androiddalvik

理論上,Dalvik執行任何虛擬機字節碼,例如使用AspectJColdFusionClojureGroovyJavaFX ScriptJRubyJythonRhinoScala的編譯器創建的…

42. 如何定義DataFrame的分區?[Scala] (How to define partitioning of DataFrame?)

apache-spark,dataframe,apache-spark-sql

我已經開始在Spark 1.4.0中使用Spark SQL和DataFrames。我想在DataFrames中定義一個自定義分區器,在Scala,但不知道如何做這個。我使用的一個數據表… …

43. 如何在SBT中使用“運行”操作來運行應用程序,如何指定JVM最大堆大小“-Xmx”?[Scala] (How to specify JVM maximum heap size “-Xmx” for running an application with “run” action in SBT?)

sbt

我的應用程序執行大數據數組處理,並且默認情況下需要比JVM提供更多的內存。我知道在Java它由“-Xmx”選項指定。如何設置SBT以使用特定的“-Xmx”值…

44. Spark:使用單鍵RDD加入2元組鍵RDD的最佳策略是什麽?[Scala] (Spark: what’s the best strategy for joining a 2-tuple-key RDD with single-key RDD?)

apache-spark

我有兩個RDD,我想加入,他們看起來像這樣:val rdd1:RDD [(T,U)] val rdd2:RDD [((T,W),V)]恰好是這樣的情況, rdd1的值是唯一的,並且tuple -…

45. Scala“< – ”的理解[Scala] (Scala “<-” for comprehension)

loops,compiler-theory,for-comprehension

我發現Scala總是有一個“自然的解釋”任何東西。總是像“哦,但這隻是一個函數被調用這個和該對象與此和該參數”。在一個 …

46. Scala:如何定義“通用”函數參數?[Scala] (Scala: How to define “generic” function parameters?)

haskell,polymorphism,type-inference

我現在想學習Scala,在Haskell有一點經驗。對我來說奇怪的一件事是,Scala中的所有函數參數必須注釋一個類型 – 東西…

47. 如何將csv文件轉換為rdd[Scala] (How do I convert csv file to rdd)

apache-spark

我是新的火花。我想對CSV記錄中的特定數據執行一些操作。我試圖讀取CSV文件並將其轉換為RDD。我的進一步操作是基於…中提供的標題。

48. 播放2.4:窗體:找不到參數消息的隱式值:play.api.i18n.Messages[Scala] (Play 2.4: Form: could not find implicit value for parameter messages: play.api.i18n.Messages)

formsplayframework,playframework-2.4

我是新的Play框架,並試圖模仿helloworld示例在我的本地機器,但我遇到一個錯誤:routes:#Home pageGET / controllers.Application.index …

49. 如何從一個動作或轉換中使用Java / Scala函數?[Scala] (How to use Java/Scala function from an action or a transformation?)

pythonapache-spark,pyspark,apache-spark-mllib

BackgroundMy原始問題這裏是為什麽使用DecisionTreeModel.predict裏麵的映射函數引發異常?並且與如何生成(原始標簽,預測標簽)的元組有關…

50. Scala構造函數重載?[Scala] (Scala constructor overload?)

scala

如何在Scala中提供重載的構造函數?

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