Scala 花括号冗长?

标签 scala curly-braces

我意识到 Scala 通常允许您以多种不同的方式编写内容。我遇到了下面的代码片段。

case class A() extends C {}

case class B() extends C

其中 C 是某个类

我想知道它的性能/功能是否有根本的区别。

如果不是,为什么有人会更喜欢带大括号的片段而不是不带大括号的片段。

最佳答案

两者没有区别。来自 Scala Language Specification (第 5.3 章):

The class body {stats} may also be omitted, in which case the empty body {} is assumed

为什么有人更喜欢带有大括号的代码段?我不知道是否有人愿意,但我可以假设这种语法对于语法的清晰度和完整性是有效的:通常当 Scala 提供某些东西的简写(“语法糖”)时,完整的语法(“去糖”)也是有效的。

关于Scala 花括号冗长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37432217/

相关文章:

scala - Akka Stream 连接到多个接收器

xml - 如何安全地处理 Scala 中的 unicode 用户输入(尤其是 XML 实体)

bash - 理解这个 .bashrc 脚本(大括号、eval、...)

java - "new"表达式中的花括号? (例如 "new MyClass() { ... }")

r - 在 R 中,如何在使用双花括号时选择列?为什么不能将 $ 运算符与大括号一起使用?

documentation - DOXYGEN:创建没有花括号语法的多参数别名,如@param 和其他人(标签!)?

linux - 使用大括号 { 作为 tcsh Linux 脚本的输入

scala - 如何通过Spark Dataframe中的索引删除数组中的元素

scala - 不可变、可打字、树的设计

java - MapReduce 程序中的洗牌步骤是否与映射并行运行?