Scala提取器 - 跳过未使用的参数

vuc*_*lur 12 scala pattern-matching case-class extractor

给出以下代码:

abstract class MyTuple

... 

case class MySeptet(a: Int, b: Int, c: Int, d: Int, e: Int, f: Int, g: Int) extends MyTuple

case class MyOctet(a: Int, b: Int, c: Int, d: Int, e: Int, f: Int, g: Int, h: Int) extends MyTuple

...
Run Code Online (Sandbox Code Playgroud)

使用生成的提取器时,是否可以跳过剩余的参数,假设它们未被使用?

例如,我不想在下面的代码片段中写下大量的下划线:

case MyOctet(a, b, _, _, _, _, _, _) => ... // uses only a and b
Run Code Online (Sandbox Code Playgroud)

小智 -1

case o: MyOctet => o.a + o.b
Run Code Online (Sandbox Code Playgroud)

  • 我不是反对者,但考虑到问题的“使用生成的提取器时”部分,这并不是真正的答案。 (2认同)