相关疑难解决方法(0)

Scala的案例类和类之间有什么区别?

我在谷歌搜索找到a case class和a 之间的差异class.每个人都提到当你想在类上进行模式匹配时,使用用例类.否则使用类并提及一些额外的额外津贴,如equals和hash code overriding.但这些是为什么应该使用案例类而不是类的唯一原因?

我想在Scala中这个功能应该有一些非常重要的原因.有什么解释或者是否有资源可以从中了解有关Scala案例类的更多信息?

functional-programming scala case-class

424
推荐指数
10
解决办法
11万
查看次数

在Scala中使用伴随对象的理由是什么?

是否需要一个类的伴随对象(单例)?为什么我要创建一个类,比如说Foo并为它创建一个伴随对象?

oop scala companion-object

101
推荐指数
4
解决办法
3万
查看次数

Scala:伴侣对象和"新"关键字

在我最近关于在Scala中使用或省略"new"关键字(Scala中的"new"关键字)的帖子中,我被告知遗漏来自于某些类具有使用apply方法定义的伴随对象的事实.我的问题是:我们能够告诉或者是否有任何一般规则来区分哪些类/对象具有伴随对象和应用方法?

在此先感谢并抱歉这是一个愚蠢的问题,但是从Java背景来看,它有点令人困惑.

scala apply new-operator

8
推荐指数
1
解决办法
1477
查看次数

什么时候scala需要新的

可能重复:
Scala中的"new"关键字

我注意到在Scala中创建某些实例你可以不使用new.什么时候需要开发人员使用new?为什么有些物品会让你错过使用它?

谢谢

List("this","is","a","list")创建这四个字符串的List; 没有新的要求

Map("foo" - > 45,"bar" - > 76)创建一个String to Int的Map,没有新的必需而且没有笨拙的助手类.

这里采取..

scala new-operator

5
推荐指数
1
解决办法
743
查看次数

我什么时候应该在 Scala 中使用“new”?

当我使用时ArrayBuffer,我应该使用:

val arr = new ArrayBuffer[Int]
Run Code Online (Sandbox Code Playgroud)

但是当我使用时Map,我应该使用:

val map = Map[Int, Int]()
Run Code Online (Sandbox Code Playgroud)

collections dictionary scala scala-collections arraybuffer

2
推荐指数
1
解决办法
1040
查看次数

Scala函数式编程:我应该使用'throw'还是'throw new'?

在Scala中进行一些函数式编程,并且来自Java背景,我倾向于抛出这样的异常:

throw new MyException("something is wrong")
Run Code Online (Sandbox Code Playgroud)

但是,我也看到人们省略new:

throw MyException("something is wrong")
Run Code Online (Sandbox Code Playgroud)

哪个更惯用?

scala

2
推荐指数
1
解决办法
140
查看次数