编者按: 本文从stackoverflow收集了Scala编程中的常见问题。基于google/baidu/bing翻译将问题议成了中文,希望在英语表达不地道(特别是中英文夹杂)的情况下,也能检索到优质内容入口。 Scala相关问题非常多,我们会陆续将这些问题做成专辑,分成多篇文章分别展现。本文是其中的第五篇内容。 注: 点击问题标题直达英文原版网站,点击 加速访问 ,可以通过本站加速器快速访问。
1. Scala 2.8 CanBuildFrom[Scala] (Scala 2.8 CanBuildFrom)
genericsscala-2.8
接下来从另一个问题,我问,Scala 2.8突破,我想了解更多关于Scala方法TraversableLike [A] .map的签名如下:def map [B,That](f:A =&.. 。
2. 为什么Scala编译器不允许使用默认参数的重载方法?[Scala] (Why does the Scala compiler disallow overloaded methods with default arguments?)
methods,default,overloading
虽然可能有这样的方法重载的有效情况可能变得不明确,为什么编译器不允许在编译时或在运行时不含糊的代码?
3. 如何在Scala中创建和使用多维数组?[Scala] (How to create and use a multi-dimensional array in Scala?)
arrays
如何创建多个维度的数组?例如,我想要一个整数或双矩阵,像double [] []在Java.我知道一个事实,数组在Scala 2.8中更改,并且…
4. 如何使用Scala的这种类型,抽象类型等来实现自我类型?[Scala] (How to use Scala’s this typing, abstract types, etc. to implement a Self type?)
self-type,abstract-type
我找不到任何其他问题的答案。假设我有一个抽象超类Abstract0有两个子类,Concrete1和Concrete1。我想要能够在Abstract0中定义…
5. ScrollView内的Google Maps API v2 SupportMapFragment – 用户无法垂直滚动地图[Scala] (Google Maps API v2 SupportMapFragment inside ScrollView – users cannot scroll the map vertically)
androidgoogle-maps-android-api-2
我试图将Google地图放在滚动视图中,以便用户可以向下滚动其他内容以查看地图。问题是,这个滚动视图正在吃掉所有垂直触摸事件,…
6. Scala:删除对象列表中的重复项[Scala] (Scala: Remove duplicates in list of objects)
listduplicates
我有一个List [Object]对象的列表,它们都是从同一个类实例化的。这个类有一个字段,它必须是唯一的Object.property。什么是最干净的方法来迭代的列表…
7. fold和foldLeft或foldRight之间的区别?[Scala] (Difference between fold and foldLeft or foldRight?)
fold
注意:我在Scala 2.8 – 这可能是一个问题,为什么不能使用foldLeft或foldRight相同的折叠功能?在设置scaladoc它说:折叠的结果可能只是一个。 … ..
8. 为什么数组是不变的,但列表是协变的?[Scala] (Why are Arrays invariant, but Lists covariant?)
arrays,listcovariance
例如。为什么doval list:List [Any] = List [Int](1,2,3)work,butval arr:Array [Any] = Array [Int](1,2,3)失败(因为数组是不变的)。这种设计决策背后的期望效果是什么?
9. 是否有一个具有固定容量和自定义比较器的PriorityQueue实现?[Scala] (Is there a PriorityQueue implementation with fixed capacity and custom comparator?)
javaheap,priority-queue
相关问题:Java PriorityQueue与固定sizeJava:如何使用PriorityQueue?在arrayScala中获取n个最小元素的索引:有一种方式使用PriorityQueue像我在…
10. 为什么scala函数限制为22个参数?[Scala] (Why are scala functions limited to 22 parameters?)
scala
不是我已经接近这个限制,但我总是想知道:为什么他们停止在Function22 / Tuple22。 JVM限制?任意选择?
11. 有没有办法从列表创建元组(没有代码生成)?[Scala] (Is there way to create tuple from list(without codegeneration)?)
tuples,iterable-unpacking
有时需要从小集合(例如烫伤框架)创建元组.def toTuple(list:List [Any]):scala.Product = …
12. Scala下划线 – 错误:缺少扩展函数的参数类型[Scala] (Scala underscore – ERROR: missing parameter type for expanded function)
underscores
我知道有很多问题,但我创造了一个简单的例子,我认为应该工作,但仍然不,我不知道我理解whyval myStrings = new Array […
13. 如何更改SBT命令中的设置?[Scala] (How to change setting inside SBT command?)
sbt
我想有一个命令publish-snapshot将运行发布任务与修改的版本设置(该设置是在执行命令时计算)。我想出了如何…
14. withFilter而不是过滤器[Scala] (withFilter instead of filter)
scala-collections
它总是更性能使用filter而不是过滤器,后来应用函数,如map,flatmap等。为什么只有map,flatmap和foreach支持? (预期功能…
15. 设置sbt以使用Java 7进行编译?[Scala] (Setting up sbt to use Java 7 for compilation?)
sbt
我在运行编译任务时遇到编译错误,因为源引用了只在Java 7中出现的java.nio.file包中的新类。我在build.sbt中有以下内容:javaHome:= …
16. 更新Scala Case Class上的操作[Scala] (Update operations on a Scala Case Class)
scalaz
我有两个相同类型的实例化的案例类。 case类Foo(x:Option [String],y:Option [String],z:Option [String])允许调用实例化的类A和B. val a = Foo(x = Some
17. 如何绕过Scala case类限制的22个字段?[Scala] (How to get around the Scala case class limit of 22 fields?)
case-class
Scala case类在构造函数中有22个字段的限制。我想超过这个限制,有一个方法来做继承或组合与case类一起使用吗?
18. 向前引用 – 为什么这段代码编译?[Scala] (Forward References – why does this code compile?)
initialization,lazy-evaluation
考虑这个代码片段:object A {val b = c val c =“foo”} println(A.b)//打印“null”作为更大程序的一部分,这将导致运行时失败。编译器…
19. 笛卡尔积的两个列表[Scala] (Cartesian product of two lists)
for-comprehension
给定一个数字与几个字符相关联的映射。>转换=地图(“0” – >列表(“A”,“B”),“1” – >列表(“C”,“D”)) :scala.collection.immutable.Map [java.lang ….
20. java.lang.NoClassDefFoundError:org / apache / spark / streaming / twitter / TwitterUtils $运行TwitterPopularTags时[Scala] (java.lang.NoClassDefFoundError: org/apache/spark/streaming/twitter/TwitterUtils$ while running TwitterPopularTags)
maven,apache-spark,noclassdeffounderror,spark-streaming
我是Spark流媒体和Scala的初学者。对于项目要求我试图运行TwitterPopularTags示例存在于github。因为SBT组装不为我工作,我不熟悉…
21. 为什么选择Scala类型成员时使用哈希而不是点?[Scala] (Why does one select Scala type members with a hash instead of a dot?)
syntax,type-systems
在Scala中,从类中选择类型的语法与从类中选择任何其他类型的语法不同。因为前者使用哈希作为选择运算符而不是点。为什么是 …
22. 语法sugar:_ *用于将Seq作为方法参数[Scala] (Syntax sugar: _* for treating Seq as method parameters)
syntactic-sugar
我只是注意到这个结构在网络上的某处:val list = List(someCollection:_ *)_ *是什么意思?这是一个语法糖为一些方法调用吗?我的自定义类满足什么约束…
23. param:_ *在Scala中是什么意思?[Scala] (What does param: _* mean in Scala?)
syntax,scala-collections
作为Scala新手(2.9.1),我有一个List [Event],并希望将其复制到Queue [Event],但是下面的语法会产生一个Queue [List [Event]]:val eventQueue = Queue事件)对于一些…
24. 具有覆盖抽象类型的蛋糕模式不适用于上类型边界[Scala] (Cake pattern with overriding abstract type don’t work with Upper Type Bounds)
designdependency-injection,traits,cake-pattern
我想重写抽象类型在trait与<:,而不是=(像这里回答Scala Upper Bounds:值不是类型参数的成员)。我想使用蛋糕模式,但这不工作,…
25. 调用distinct和map一起在spark库中抛出NPE[Scala] (call of distinct and map together throws NPE in spark library)
nullpointerexception,apache-spark
我不确定这是否是一个错误,所以如果你做这样// d:spark.RDD [String] d.distinct()。map(x => d.filter(_。equals(x)))会得到一个Java NPE。但是,如果你立即收集…
26. 如何使用IntelliJ Idea创建SBT项目?[Scala] (How to create SBT project with IntelliJ Idea?)
intellij-idea,lift,sbt
我刚刚开始Scala / LiftWeb / Sbt开发,我想导入一个Sbt项目在IntelliJ Idea.Actually,我设法导入我的项目有两种不同的方式:1)与Maven。我创建了一个…
27. 缩小,折叠或扫描(左/右)?[Scala] (Reduce, fold or scan (Left/Right)?)
scala-collections,reduce,fold
什么时候应该使用reduceLeft,reduceRight,foldLeft,foldRight,scanLeft或scanRight?我想直观/概述他们的区别 – 可能有一些简单的例子。
28. 有一个很好的数学/ stats库Scala?[Scala] (Is there a good math/stats library for Scala?)
math,statistics
我正在寻找一个良好的开源库scala的数学和统计。希望像Apache Math或Colt,但在Scala中实现。任何人都可以指向正确的方向?
29. 什么是Scala延续和为什么使用它们?[Scala] (What are Scala continuations and why use them?)
scala-2.8,continuations,delimited-continuations
我刚刚在Scala完成了编程,我一直在研究Scala 2.7和2.8之间的变化。一个似乎是最重要的是继续插件,但我不明白…
30. 如何优化Scala中的for-comprehension和循环?[Scala] (How to optimize for-comprehensions and loops in Scala?)
java,performancefor-loop,while-loop
所以Scala应该和Java一样快。我正在重新审视Scala中我最初用Java处理的一些Project Euler问题。具体问题5:“最小的正数是多少?
31. Scala和Python的Spark性能[Scala] (Spark performance for Scala vs Python)
python,performanceapache-spark
我喜欢Python比Scala。但是,由于Spark是由Scala本地编写的,所以我期望我的代码在Scala中运行比Python版本更快明显的原因。有了这个假设,我想…
32. 从Scala文件创建jar文件[Scala] (Creating a jar file from a Scala file)
javajar
我是新来的Scala,不知道Java。我想从一个简单的Scala文件创建一个jar文件。所以我有我的HelloWorld.scala,生成一个HelloWorld.jar。 Manifest.mf:Main-Class:HelloWorldIn …
33. 哪些编程语言可以用于在Android中开发? [重复][Scala] (Which programming languages can be used to develop in Android? [duplicate])
java,androidprogramming-languages,scripting
可能重复:我可以在Android Dalvik使用哪些编程语言?大多数情况下,Android应用程序是用Java编写的。但我听说它也可以使用Scala或其他一些…
34. 将Java集合转换为Scala集合[Scala] (Converting a Java collection into a Scala collection)
javascala-collections,scala-2.7
相关的Stack Overflow问题Scala相当于新的HashSet(Collection),如何转换一个Java集合(java.util.List说)到一个Scala集合List?我其实正试图转换…
35. 什么时候和为什么应该使用Scala中的应用函子[Scala] (When and why should one use Applicative Functors in Scala)
functional-programming,applicative
我知道Monad可以在Scala中表示如下:trait Monad [F [_]] {def flatMap [A,B](f:A => F [B]):F [A] }我明白为什么它是有用的。例如,给定两个函数:…
36. 什么是Scala的方式来实现像这样的可重试的电话?[Scala] (What’s the Scala way to implement a retry-able call like this one?)
java,designcoding-style,functional-programming
仍然是Scala的新手,我现在正在寻找一种方法来实现以下代码:@Overridepublic void store(InputStream source,String destination,long size){ObjectMetadata …
37. 如何在IntelliJ IDEA中使用SBT构建Uber JAR(Fat JAR)?[Scala] (How to build an Uber JAR (Fat JAR) using SBT within IntelliJ IDEA?)
intellij-idea,sbt,meta-inf,uberjar
我使用SBT(IntelliJ IDEA)构建一个简单的Scala项目。我想知道什么是最简单的方法来构建Uber JAR文件(又名Fat JAR,Super JAR)。我目前使用SBT,但是。 … ..
38. Currying v.s.的有用性(在实际应用中)。在Scala中部分应用[Scala] (Usefulness (as in practical applications) of Currying v.s. Partial Application in Scala)
currying,partial-application
我试图理解在Scala中解决部分应用程序的优势。请考虑以下代码:def sum(f:Int => Int)=(a:Int,b:Int)=> f(a)+ f
39. 为什么Scala为每个列表提供多个参数列表和多个参数? [重复][Scala] (Why does Scala provide both multiple parameters lists and multiple parameters per list? [duplicate])
currying,partial-application
多个参数列表,例如def foo(a:Int)(b:Int)= {}和每个列表的多个参数。 def foo(a:Int,b:Int)= {}在语义上是等同的,就我所知,和大多数功能…
40. 使用Scala解析器组合器解析CSV文件[Scala] (Use Scala parser combinator to parse CSV files)
parsingcsv,parser-combinators
我试图写一个CSV解析器使用Scala解析器组合器。该语法基于RFC4180。我想出了以下代码。它几乎可以工作,但我不能让它正确分离…
41. Scala双精度(2种方法具有相同的类型擦除)[Scala] (Scala double definition (2 methods have the same type erasure))
compilation,method-overloading,typeclass,type-erasure
我写在scala,它不会编译:class TestDoubleDef {def foo(p:List [String])= {} def foo(p:List [Int])= {}}编译器通知:[error] double定义:[error] method foo:(…
42. 使用Scala延续实现yield(yield return)[Scala] (Implementing yield (yield return) using Scala continuations)
scala-2.8,yield,continuations,yield-return
如何使用Scala延续实现C#yield return?我想用同样的风格写Scala迭代器。一个stab是在这个Scala新闻的评论,但它不… …
43. 如何配置未来的精调线程池?[Scala] (How to configure a fine tuned thread pool for futures?)
multithreadingparallel-processing,threadpool,future
Scala的期货线程池有多大?我的Scala应用程序创造了数百万的未来{},我想知道是否有任何我可以做的优化他们通过配置线程池。谢谢…
44. 什么是=>和()=>意思在Scala [duplicate][Scala] (What does => and () => mean in Scala [duplicate])
scala
我是新到Scala,我真的很喜欢它,但有时它让我惊讶。例如:clickedCallbacks:List [()=> Unit])任何人都可以告诉我在Scala什么=>和()=>平均值?
45. `def` vs`val` vs`lazy val`评价在Scala[Scala] (`def` vs `val` vs `lazy val` evaluation in Scala)
properties,lazy-evaluation
我是正确的理解,每次它被访问时,评估每次val是valval评估一旦它被访问,进行评估一旦它进入执行范围?
46. 编辑器不包含主类型[Scala] (Editor does not contain a main type)
eclipse
只是在Scala网站上通过示例Scala代码,但遇到一个恼人的错误,当尝试运行它。它的代码:http://www.scala-lang.org/node/45。在Eclipse上运行它,我有…
47. 如何设置sbt的堆大小?[Scala] (How to set heap size for sbt?)
sbt
我使用SBT 0.12.0。我已经阅读stackoverflow的其他答案,并遵循他们,但没有一个帮助,例如:create ForkRun类 – 我没有观察到任何分支过程在我…
48. Scala的Case Classes的重载构造函数?[Scala] (Overload constructor for Scala’s Case Classes?)
constructor,overloading,scala-2.8,case-class
在Scala 2.8有一个方法来重载一个case类的构造函数?如果是,请放一个代码片段解释,如果没有,请解释为什么?
49. Scala:返回Boolean的模式匹配的短形式[Scala] (Scala: short form of pattern matching that returns Boolean)
pattern-matching
我发现我经常写这样的东西:一个匹配{case`b` => //做东西case _ => // do nothing}有一个更短的方法来检查一些值是否匹配一个模式?一世 …
50. 如何在scala中写一个合适的空安全合并操作符?[Scala] (How to write a proper null-safe coalescing operator in scala?)
coalescing
看到了回答出来的问题,像这样的一个涉及恐怖的表现,如试图抓住NPE和疏通的堆积名称从堆栈跟踪,我问这个问题,所以我可以…