Questions tagged «scala»

Scala是主要针对Java虚拟机的通用编程语言。它旨在以简洁,优雅和类型安全的方式表达常见的编程模式,它融合了命令式和功能性编程风格。它的主要特征是:具有类型推断功能的高级静态类型系统;功能类型;模式匹配; 隐式参数和转换;操作符重载;与Java完全互操作性;并发

2
此类型与自我类型注释之间的区别?
在各种Scala文献中,我看到一些使用“ this”的自我类型注释,另一些使用“ self”的注释: trait A { this: B => ... } trait A { self: B => ... } 使用“ this”或“ self”之间有什么真正的区别?使用什么名字有关系吗?这一样有效吗? trait A { foo: B => ... }
134 scala 

6
如何从Java列表获取Scala列表?
我有一个Java API,返回的列表如下: public List<?> getByXPath(String xpathExpr) 我正在使用以下scala代码: val lst = node.getByXPath(xpath) 现在,如果我尝试使用scala语法糖,例如: lst.foreach{ node => ... } 这是行不通的。我得到错误: value foreach is not a member of java.util.List[?0] 看来我需要将Java列表转换为Scala列表。在上述情况下该如何做?
133 java  scala 

3
Apache Spark:map与mapPartitions?
RDD map和mapPartitions方法之间有什么区别?并且flatMap表现得像map还是喜欢mapPartitions?谢谢。 (edit),即两者之间在语义上或执行上有什么区别 def map[A, B](rdd: RDD[A], fn: (A => B)) (implicit a: Manifest[A], b: Manifest[B]): RDD[B] = { rdd.mapPartitions({ iter: Iterator[A] => for (i <- iter) yield fn(i) }, preservesPartitioning = true) } 和: def map[A, B](rdd: RDD[A], fn: (A => B)) (implicit a: Manifest[A], b: Manifest[B]): RDD[B] = …

4
什么是Scala清单,什么时候需要?
从Scala 2.7.2开始,有一种叫做的东西Manifest,它是Java类型擦除的一种解决方法。但是如何Manifest正确工作以及为什么/何时需要使用它呢? Jorge Ortiz 撰写的博客文章Manifests:Reified Types解释了其中的一些内容,但没有说明如何与上下文范围一起使用它。 还有,什么是ClassManifest什么Manifest? 我有一些代码(是更大程序的一部分,在这里不能轻易包含它),其中包含有关类型擦除的警告。我怀疑我可以通过使用清单来解决这些问题,但我不确定具体如何。
132 scala  manifest 

8
如何在Scala中优化理解和循环?
因此,Scala应该和Java一样快。我正在重新研究最初在Java中解决的Scala Project Euler问题。尤其是问题5:“能被1到20的所有数均分的最小正数是多少?” 这是我的Java解决方案,需要0.7秒才能在我的计算机上完成: public class P005_evenly_divisible implements Runnable{ final int t = 20; public void run() { int i = 10; while(!isEvenlyDivisible(i, t)){ i += 2; } System.out.println(i); } boolean isEvenlyDivisible(int a, int b){ for (int i = 2; i <= b; i++) { if (a % i != …

4
Scala中的#操作符是什么意思?
我在以下博客中看到此代码:Scala中的Type-Level Programming: // define the abstract types and bounds trait Recurse { type Next <: Recurse // this is the recursive function definition type X[R <: Recurse] <: Int } // implementation trait RecurseA extends Recurse { type Next = RecurseA // this is the implementation type X[R <: Recurse] …

5
Scala @运算符
Scala的@运算符做什么? 例如,在博客文章Scala中的形式语言处理,第2部分中,有类似这样的内容 case x @ Some(Nil) => x
130 scala  operators 


3
sbt-assembly:发现重复数据删除错误
我不确定合并策略还是排除jar是这里的最佳选择。我如何进一步解决此错误的任何帮助都非常好! [sameert@pzxdcc0151 approxstrmatch]$ sbt assembly [info] Loading project definition from /apps/sameert/software/approxstrmatch/project [info] Set current project to approxstrmatch (in build file:/apps/sameert/software/approxstrmatch/) [info] Including from cache: scala-library.jar [info] Checking every *.class/*.jar file's SHA-1. [info] Merging files... [info] Including from cache: curator-client-2.4.0.jar [info] Including from cache: secondstring-20140729.jar [info] Including from cache: slf4j-api-1.7.5.jar [info] …
130 scala  sbt  sbt-assembly 

1
当案例类包含scala枚举时,如何使用带有Rogue的MongoCaseClassField更新mongo记录
我从升级现有的代码Rogue 1.1.8,以2.0.0和lift-mongodb-record从2.4-M5 to 2.5。 我在编写MongoCaseClassField包含scala枚举的过程中遇到困难,我确实可以使用一些帮助。 例如, object MyEnum extends Enumeration { type MyEnum = Value val A = Value(0) val B = Value(1) } case class MyCaseClass(name: String, value: MyEnum.MyEnum) class MyMongo extends MongoRecord[MyMongo] with StringPk[MyMongo] { def meta = MyMongo class MongoCaseClassFieldWithMyEnum[OwnerType <: net.liftweb.record.Record[OwnerType], CaseType](rec : OwnerType)(implicit mf : …
129 mongodb  class  scala  record  lift 

2
Scala构造函数参数默认为private val吗?
我已经试了: class Foo(bar: Int) vs: class Foo(private val bar: Int) 他们似乎有同样的表现,虽然我无法找到任何地方说,(bar: Int)扩张到(private val bar: Int),所以我的问题是,这些相同/相似? 顺便说一句,我一直试图-Xprint:typer在这些代码段上使用,它们产生相同的代码,除了第二行中的额外一行。我如何阅读多余的文字? .. class Foo extends scala.AnyRef { <paramaccessor> private[this] val bar: Int = _; def <init>(bar: Int): this.Foo = { Foo.super.<init>(); () } } .. .. class Foo extends scala.AnyRef { <paramaccessor> private[this] val bar: …

6
Scala和Groovy之间的主要区别是什么?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 改善这个问题 从表面上看,Groovy和Scala看起来非常相似,除了静态类型的Scala和动态的Groovy。 其他主要区别是什么,彼此之间的优势是什么? 他们到底有多相似? 两者之间有竞争吗? 如果是这样,从长远来看,您认为谁会赢?
128 scala  groovy 

3
Scala:Nil vs List()
在Scala中,Nil和之间是否有任何区别List()? 如果不是,哪一种是更惯用的Scala风格?用于创建新的空列表和在空列表上进行模式匹配。
128 scala 

5
如何定义DataFrame的分区?
我已经开始在Spark 1.4.0中使用Spark SQL和DataFrames。我想在Scala的DataFrames上定义一个自定义分区程序,但不知道如何做到这一点。 我正在使用的数据表之一包含一个按帐户分类的事务列表,类似于以下示例。 Account Date Type Amount 1001 2014-04-01 Purchase 100.00 1001 2014-04-01 Purchase 50.00 1001 2014-04-05 Purchase 70.00 1001 2014-04-01 Payment -150.00 1002 2014-04-01 Purchase 80.00 1002 2014-04-02 Purchase 22.00 1002 2014-04-04 Payment -120.00 1002 2014-04-04 Purchase 60.00 1003 2014-04-02 Purchase 210.00 1003 2014-04-03 Purchase 15.00 至少在最初,大多数计算将在帐户内的交易之间进行。因此,我希望对数据进行分区,以便一个帐户的所有交易都在同一个Spark分区中。 但是我没有找到定义它的方法。DataFrame类具有一个称为“ …

4
依赖方法类型有哪些引人注目的用例?
依赖的方法类型以前曾经是实验性功能,现在默认情况下已在主干中启用,显然,这似乎在Scala社区中引起了一定的兴趣。 乍一看,这可能会产生什么效果尚不清楚。Heiko Seeberger在此处发布了一个简单的依赖方法类型的示例,从注释中可以看出,可以很容易地在方法上使用类型参数来复制它们。因此,这不是一个非常引人注目的例子。(我可能缺少明显的东西。如果是,请更正我。) 在依赖方法类型明显优于替代方法的情况下,有哪些实用且有用的用例示例? 我们可以对他们做哪些以前不可能/不容易做的有趣事情? 他们通过现有的类型系统功能向我们购买什么? 此外,从属方法类型是否类似于在其他高级键入语言(例如Haskell,OCaml)的类型系统中找到的任何功能或从中获得启发?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.