类型列表采用类型参数

时间:2018-03-06 19:15:24

标签: scala scopt

我有以下数据:

val param1 = List(("f1","f2","f3"),
                  ("d1","d2","d2"))

List中的行数不固定。

我想将这些数据作为我的Scala对象的输入参数传递。

import scopt.OptionParser

object Test {

  case class Params( param1: List[(String, String, String)] = null )

  def main(args: Array[String]) {

    val defaultParams = Params()

    val parser = new OptionParser[Params]("Test") {
      head("bla-bla")

      opt[List[(String, String, String)]]("param1")
        .required()
        .text("xxx")
        .action((x, c) => c.copy(param1 = x))
    }

    parser.parse(args, defaultParams).map { params =>
      val processor = new TestProcessor()
      processor.run(params)
    } getOrElse {
      System.exit(1)
    }
  }
}

我该怎么办?目前,我定义String,但它不正确。如果我使用List(String,String,String),则会显示Type List takes type parameters

0 个答案:

没有答案