Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 使用长参数值命名(case)类的惯例是什么?_Scala_Conventions - Fatal编程技术网

Scala 使用长参数值命名(case)类的惯例是什么?

Scala 使用长参数值命名(case)类的惯例是什么?,scala,conventions,Scala,Conventions,如果我有一个类或case类,其参数足够长,不能放在一行中,如: case class Foo(foo1: String, foo2: String, foo3: Int, foo4: Char, foo5: Long, foo6: Double, foo7: Array[Int]) 为了提高可读性,应该如何将其分成几行?Scala中对此有约定吗?对于我所看到的Scala中的自动格式化程序,如果您将其分成多行,格式化程序将执行以下操作: case class Foo( foo1: Strin

如果我有一个类或case类,其参数足够长,不能放在一行中,如:

case class Foo(foo1: String, foo2: String, foo3: Int, foo4: Char, foo5: Long, foo6: Double, foo7: Array[Int])

为了提高可读性,应该如何将其分成几行?Scala中对此有约定吗?

对于我所看到的Scala中的自动格式化程序,如果您将其分成多行,格式化程序将执行以下操作:

case class Foo(
  foo1: String, 
  foo2: String, 
  foo3: Int, 
  foo4: Char, 
  foo5: Long, 
  foo6: Double, 
  foo7: Array[Int]
)

您还可以考虑是否将这些参数中的任何一个分组为自己的一个case类,减少参数的数量。

我把每一个放在自己的行上。这使您很容易看到diff.Use Scala style guide中的更改,以了解样式约定,特别是本页了解类声明。感谢您的考虑,我发布了此答案,因为我使用的是IntellJ IDEA,它的格式与Foo对齐,而不是将左边的两个缩进作为您的答案。在@yuriy gatilin在评论中分享的Scala风格指南中说,对于类来说,最好是四个空格的缩进,而不是两个空格的缩进。