当前位置: 首页>>技术问答>>正文


Scala编程常见问题整理【二】

zhebie 技术问答 去评论

编者按: 本文从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/article/1553.html,未经允许,请勿转载。