命令行参数的简单解构提取器

时间:2014-06-02 20:39:14

标签: scala

首选方法是使用类似于下面注释掉的内容。

  def main(args: Array[String]) {
//    val (dbPropsFile, tsvFile, dbTable) = args
    val dbPropsFile = args(0)
    val tsvFile = args(1)
    val dbTable = args(2)

但是我对编译器有一点争吵:

Error:(13, 9) constructor cannot be instantiated to expected type;
 found   : (T1, T2, T3)
 required: Array[String]
    val (dbPropsFile, tsvFile, dbTable) = args

    ^

所有人都说这对于那里的人来说应该是一个简单的几点。

1 个答案:

答案 0 :(得分:3)

使用    val Array(dbPropsFile, tsvFile, dbTable) = args

scala> val Array(a,b,c) = Array(1,2,3)
a: Int = 1
b: Int = 2
c: Int = 3

scala> a
res0: Int = 1