Var-arg方法只接受基元或Seq [primitive]

时间:2015-04-10 09:57:08

标签: scala

如何创建方法,只接受基元或它们的Seq?此外,它应该是var-arg。

def方法(args:Param *)

其中args是例如

method(1: Int, 1l: Long, "1": String, Seq(1, 3, 7))

第二个条件是它不能接受值类

1 个答案:

答案 0 :(得分:5)

像这样定义Param

sealed abstract class Param

object Param {
  implicit final class IntParam(val x: Int) extends Param
  implicit final class StringParam(val x: String) extends Param
  ...
  implicit final class SeqParam(val seq: Seq[Param]) extends Param
}