我要分配两个变量:
val a: Seq[Int] = schema.map(_.getLong(key="width").toInt)
val b: Seq[String] = schema.map(_.name)
我在不同的地方使用这些变量。
当我从相同的架构进行计算时,我需要将其与一个变量合并为一个步骤,这样我就可以一次进行计算。
我该怎么做?
答案 0 :(得分:2)
I need to merge this into one step with one variables so that I can compute this in one attempt.
您可以将
创建为Seq[Tuple2[Int, String]]
val c: Seq[(Int, String)] = schema.map(x => (x.getLong(key="width").toInt, x.name))
使c._1
等于您的 a元素,而c._2
等于b的元素
或者换句话说
c.map(_._1)
等于a 和 c.map(_._2)
等于b
答案 1 :(得分:0)
val ab= schema.map(i=> (i.getLong(key="width").toInt),i.name))
将为您提供两个值的元组
如果希望他们命名,可以
case class S(name : String, width: Int)
val ab = schema.map(i=> S(i.name,i.getLong(key="width").toInt))