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


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

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


1. 什麽Scala功能允許加號運算符在任何使用?[Scala] (What Scala feature allows the plus operator to be used on Any?)

scala

我還在學習Scala,當我在Koans中遇到一個例子時,我不能理解為什麽它工作:var foo:Any =“foo”println(foo +“bar”)任何沒有a +方法

2. Scala運算符奇數[Scala] (Scala operator oddity)

scala

當我調用+ on 2我得到一個Int回來,但是當它使用顯式方法調用我得到Double代替.scala> 2 + 2res1:Int = 4scala> 2。+(2)res2:Double = 4.0看起來。 +()是…

3. 如何unimport字符串“+”運算符在Scala?[Scala] (How to unimport String “+” operator in Scala?)

scala-2.8

我寫一個DSL,其中“+”運算符是嚴格的數字,像一些其他流行語言。它接近,但是String“+”運算符正在擾亂我的隱式轉換。什麽是語法…

4. 為什麽asInstanceOf不拋出ClassCastException?[Scala] (Why asInstanceOf doesn’t throw a ClassCastException?)

type-safety

為什麽asInstanceOf不拋出ClassCastException?scala> List(“a”)。asInstanceOf [List [Int]] res34:List [Int] = List(a)

5. 如何在Java中傳遞Scala對象引用?[Scala] (How can I pass a Scala object reference around in Java?)

javainterop

我想從Java方法返回一個對Scala對象的引用。我如何做到這一點?我的Scala對象是這樣:trait環境對象LocalEnvironment extends Environment {…} object …

6. 為什麽Scala使用反向shebang(!#),而不是隻設置解釋器為scala[Scala] (Why does Scala use a reversed shebang (!#) instead of just setting interpreter to scala)

bashsh

scala文檔顯示了創建scala腳本的方法是這樣的:#!/ bin / shexec scala“$ 0”“$ @”!#/ *腳本在這裏* /我知道這使用腳本的名稱執行scala文件…

7. Scala – vals的初始化順序[Scala] (Scala – initialization order of vals)

constructor,initialization,immutability,final

我有這段代碼從文件加載屬性:class Config {val properties:Properties = {val p = new Properties()p.load(Thread.currentThread()。getContextClassLoader ….

8. Scala:在for’模式匹配的無情況下的奇怪行為[Scala] (Scala: strange behavior in `for` pattern matching for None case)

for-loop,pattern-matching

奇怪的行為在循環模式匹配:scala> val a = Seq(Some(1),None)a:Seq [Option [Int]] = List(Some(1),None) – a){println(x)} 1scala> for(None&…)

9. Specs2:如何測試一個具有多個注入依賴的類?[Scala] (Specs2: how to test a class with more than one injected dependency?)

playframework,dependency-injection,specs2,playframework-2.4

播放2.4應用程序,使用服務類的依賴注入。我發現當被測試的服務類有多個注入的依賴時,Specs2阻塞。它失敗,“找不到…

10. scala – XML插入/更新[Scala] (scala – XML insert/update)

xmlxpath,insert

你知道任何Scala API插入和(或)更新節點根據XPath嗎?例如對於給定的節點和XPath,該API將創建具有新節點的XML的副本

11. 如何通過在反射中混合特征來訪問對象中的對象?[Scala] (How to access objects within an object by mixing in a trait with reflection?)

reflection,enums,singleton

如何獲得一個對象內的所有對象與反射?考慮這個代碼:對象MonthDay extends MyEnum {//一些重要的節日對象NewYear extends MonthDay(1,1)…

12. 帶有String Interpolation的Anorm LIKE子句[Scala] (Anorm LIKE clause with String Interpolation)

anorm

是否可以在Anorm中使用帶有String Interpolation的LIKE子句?這不工作SQL“SELECT * FROM users WHERE last_name LIKE $ lastName%”。as(userParser。*)UPDATED:我需要SQL …

13. 如何比較RDD中的每個元素與RDD中的每個其他元素?[Scala] (How to compare every element in the RDD with every other element in the RDD ?)

apache-spark,nearest-neighbor

我正在嘗試使用spark執行K最近鄰搜索。我有一個RDD [Seq [雙]],我打算返回aRDD [(Seq [雙],Seq [Seq [雙]])]與實際行和鄰居列表…

14. Spark作業與Async HTTP調用[Scala] (Spark job with Async HTTP call)

apache-spark,future

我從一個URL列表構建RDD,然後嘗試獲取數據與一些異步HTTP調用。我需要所有的結果,在做其他calculs.Ideally之前,我需要在不同的節點上進行http調用…

15. 為什麽在使用cons運算符構建的列表的末尾需要Nil[Scala] (Why is Nil required at the end of a list built using the cons operator)

scala

我正在學習Scala(Programming Scala,第2版,Odersky)。當使用cons操作符構建列表時,我們必須寫:val l = 1 :: 2 :: 3 :: 4 :: Nil為什麽我們需要nil在…

16. Slick 3.0-RC3失敗,返回java.util.concurrent.RejectedExecutionException[Scala] (Slick 3.0-RC3 fails with java.util.concurrent.RejectedExecutionException)

concurrency,slick

我試圖熟悉Slick 3.0和Futures(使用Scala 2.11.6)。我使用基於Slick的Multi-DB Cake Pattern示例的簡單代碼。為什麽以下代碼以異常終止?

17. 為JSON集類型定義`Reads`[Scala] (Defining `Reads` for JSON Set Type)

jsonplayframework,playframework-json

如何為我的人案例類創建一個play.api.libs.Reads?scala> type Id = Longdefined類型別名Idscala> case類人(名稱:Set [Id])defined Peoplescala> implicit …

18. 將多個文件並行處理為獨立的RDD[Scala] (Processing multiple files as independent RDD’s in parallel)

apache-spark,apache-spark-sql

我有一個場景,其中包括group by的一定數量的操作必須應用於一些小(〜300MB每個)文件。操作如下所示…df.groupBy(….)。agg(….)現在…

19. 為什麽當類型類不在專用源文件中時,Scala找不到在伴體對象中隱式定義的類型類實例?[Scala] (Why can’t Scala find my typeclass instance defined implicitly in the companion object, when the typeclass is not in a dedicated source file?)

typeclass,implicit,companion-object

請參考下麵的源代碼。所有源代碼都在同一個包中定義。當我定義所有的代碼在單個源文件ShowMain.scala中,我得到一個編譯錯誤,但是當…

20. 無法運行從scala文件創建的jar文件[Scala] (Cannot run jar file created from scala file)

jar,build,sbt

這是我在scala.object中寫的代碼Main extends App {println(“Hello World from Scala!”)}這是我的build.sbt.name:=“hello-world”version:=“1.0”scalaVersion: “2.11.5”…

21. 模式匹配的問題,在scala中實現SplitAt[Scala] (Problems with Pattern matching, implementing SplitAt in scala)

listsplit,pattern-matching

我試圖實現scala splitAt使用模式匹配,這是我想要做的:def split [T](someIndex:Int,someList:List [T]):( List [T],List [T] = {def splitHelper [T](…

22. 在Play框架中有一個列表Web服務參數[Scala] (Have a List in Play framework web service parameters)

playframework

我寫了這個web服務在play framework.controller def getByGenre(genre:String)= Action {val result = Await.result(Movies.getByGenre(genre),5秒)Ok(toJson(result))} …

23. MatchError當匹配接收到IndexedSeq而不是LinearSeq時[Scala] (MatchError when match receives an IndexedSeq but not a LinearSeq)

match

是否有一個原因,針對Seq寫的匹配將在IndexedSeq類型上工作方式不同於LinearSeq類型?對我來說,下麵的代碼似乎應該做同樣的事情…

24. “代數”在程序設計的上下文中是什麽意思?[Scala] (What does “coalgebra” mean in the context of programming?)

haskell,functional-programming,programming-languages,category-theory

我已經在功能編程和PLT圈子中聽說過“煤礦”這個術語,特別是當討論的是物體,共聚單體,透鏡等時。 Googling這個詞給了頁… …

25. 函數式編程中如何存在時間函數?[Scala] (How can a time function exist in functional programming?)

haskell,f#,functional-programming,clean-language

我不得不承認我不太了解函數式編程。我從這裏和那裏讀到它,因此知道在函數式編程中,一個函數返回相同的輸出,對於相同的…

26. Scala:解析命令行參數(CLI)的最佳方法?[Scala] (Scala: Best way to parse command-line parameters (CLI)?)

command-line,command-line-parsing

在Scala中解析命令行參數最好的方法是什麽?我個人更喜歡輕量級的,不需要外部jar.Related:解析命令行參數的Java庫?

27. Rest API服務器的Scala框架? [關閉][Scala] (Scala framework for a Rest API Server? [closed])

api,restlift

我們正在考慮將我們的Rest API服務器(它在Web服務內部,在Symfony PHP上)移動到Scala,原因如下:速度,無開銷,CPU少,代碼少,可擴展性等等我不知道…

28. Scala演員 – 最壞的做法?[Scala] (Scala actors – worst practices?)

actor

我覺得在Scala中使用actors有點不安全。我已經閱讀關於如何做的東西的文檔,但我想我還需要一些不規則,以便隨時使用它們。我想我…

29. Scala是什麽偉大的? [關閉][Scala] (What’s so great about Scala? [closed])

programming-languageslanguage-features

除了類型係統,什麽使Scala這麽美妙的語言?幾乎所有我閱讀的關於語言的東西帶來了’強類型’作為使用Scala的一個大原因,但還有更多…

30. IntelliJ Idea 12 + Android + Scala現在[Scala] (IntelliJ Idea 12 + Android + Scala nowadays)

androidubuntu,ide,intellij-idea

對我來說,我已經經曆了幾篇文章,描述如何使IntelliJ Idea和Android和Scala一起工作,但事實證明,他們都是1或2年前寫的。可能,…

31. Scala中的語法糖的所有實例是什麽?[Scala] (What are all the instances of syntactic sugar in Scala?)

syntactic-sugar

Scala中的語法糖的所有實例是什麽?它們很難搜索,因為大多數/所有的都是純符號,因此很難搜索,而不知道概念的名稱….

32. Debongking Scala神話[關閉][Scala] (Debunking Scala myths [closed])

programming-languages

關於Scala語言最常見的誤解是什麽,以及什麽反例存在於這些?UPDATEI正在更多地思考我所看到的各種聲明,例如“Scala是…

33. 隱式轉換vs.類型類[Scala] (Implicit conversion vs. type class)

coding-style,implicit-conversion

在Scala中,我們可以使用至少兩種方法來改進現有類型或新類型。假設我們想表達可以使用Int量化的東西。我們可以定義以下trait.Implicit …

34. Scala中的IEnumerable LINQ等效圖表? [重複][Scala] (Chart of IEnumerable LINQ equivalents in Scala? [duplicate])

c#,linqienumerable,iterable

可能重複:Scala中的LINQ類似我正在尋找圖表顯示等效的Scala LINQ方法為IEnumerable:首先是headSelect是mapSingleOrDefault是…(我不… …

35. Scala actors:receive vs react[Scala] (Scala actors: receive vs react)

multithreading,actor

讓我先說我有很多Java經驗,但最近才對函數式語言感興趣。最近我開始看看Scala,這似乎是一個非常好的…

36. 如何在Scala中概述方法?[Scala] (How to profile methods in Scala?)

functionprofiling,aspect

什麽是剖析Scala方法調用的標準方法?我需要的是一個方法的鉤子,我可以使用它來啟動和停止Timers.In Java我使用方麵編程,aspectJ,定義…

37. Scala樣式的元素? [關閉][Scala] (Elements of Scala Style? [closed])

scala

一天我寫C#。我做的所有事情都通過Microsoft代碼分析和靜態分析工具,所以我的C#有一個非常規則的結構和布局。顯然,我寫的代碼有一定的風格。它是 …

38. FP和OO是否正交?[Scala] (Are FP and OO orthogonal?)

oopprogramming-languages,functional-programming,paradigms

我一直聽到這種情況,我試圖理解和驗證FP和OO是正交的想法。首先,2個概念是正交的意味著什麽?FP鼓勵…

39. Akka HTTP:阻止未來阻止服務器[Scala] (Akka HTTP: Blocking in a future blocks the server)

akka,future,akka-http

我試圖使用Akka HTTP基本認證我的請求。因此發生,我有一個外部資源認證通過,所以我必須休息電話這個資源。這需要一些…

40. 摘要類與性質之間的差異[Scala] (Difference between Abstract Class and Trait [duplicate])

abstract-class,traits

可能的重複:Scala traits vs抽象類抽象類和traits之間的概念上的區別是什麽?

41. Java Scala interop:透明列表和映射轉換[Scala] (Java Scala interop: transparent List and Map conversion)

javainterop,scala-java-interop

我正在學習Scala,我有一個Java項目遷移到Scala。我想通過重寫類一個一個,並檢查新類沒有打破項目遷移它。這個Java項目使用…

42. Scala(和Java)中的類和類型之間的區別是什麽?[Scala] (What is the difference between a class and a type in Scala (and Java)?)

java,classtypes,language-design

Scala在Scala中可以觀察到類和類型之間的差異,為什麽這種區別很重要?它隻是從語言設計的角度來考慮,還是“

43. scala – 任何與泛型中的下劃線[Scala] (scala – Any vs underscore in generics)

generics,any,underscores

在Scala中下麵的泛型定義有什麽不同:class Foo [T <:List [_]]和類Bar [T <:List [Any]]我的腸子告訴我他們是相同的,但後者.. 。

44. Scala類型係統與Haskell的缺點?[Scala] (Disadvantages of Scala type system versus Haskell?)

haskell,type-systems,static-typing,language-comparisons

我已經讀過,Scala的類型係統被Java互操作性削弱,因此不能執行與Haskell的類型係統相同的權力。這是真的?是因為類型的弱點…

45. 如何讓Eclipse識別SBT的依賴關係[Scala] (How to have Eclipse recognize dependencies from SBT)

eclipsesbt,sbteclipse

我試圖找出如何使Eclipse識別使用SBT檢索的依賴關係? SBT下載正確的依賴項並將它們放在我的〜/ .ivy目錄中,但eclipse不會看到…

46. 了解Scala中的’type’關鍵字[Scala] (Understanding what ‘type’ keyword does in Scala)

types

我是新到Scala,我不能真正找到很多關於’type’關鍵字。我試圖理解下麵的表達式可能意味著什麽:type FunctorType =(LocalDate,HolidayCalendar,Int,…

47. 為什麽對這個Scala代碼進行小改動會對性能產生巨大的影響?[Scala] (Why does a small change to this Scala code make such a huge difference to performance?)

performance,optimization

我運行在32位Debian 6.0(Squeeze)係統(2.5 GHz Core 2 CPU),sun-java6 6.24-1,但與來自Wheezy.This代碼的Scala 2.8.1包,編譯與scalac優化,接手 …

48. 在Scala LINQ類似?[Scala] (LINQ analogues in Scala?)

linq

有沒有任何合理的類似於LINQ(.NET)的Scala?

49. 創建簡單項目SBT 0.10.X[Scala] (Create Simple Project SBT 0.10.X)

sbt

(這是一個後續的sbt沒有正確地創建項目。問題沒有回答。)基本上,這個問題說“我不知道如何在新的sbt下創建一個項目。 。

50. 如何將我的噴霧API部署到生產?[Scala] (How to deploy my spray API into production?)

akka,spray

我正在考慮應該如何將我已經本地測試的休息api部署到雲,讓基礎設施作為一個服務(而不是一個平台作為一個服務,如Heroku)像亞馬遜。

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