def clu(allcenter:Array[Int], data:Array[Array[Double]], cnum : Int) = {
val alldata = (data, allcenter).zipped.map { case (a, b) => b.toDouble +: a}
在此之后我想过滤alldata的第一个元素并获取retain元素
像这样:alldata.fliter(_._1 == 10).map(case(a,b,c) => (b,c)) //it's way in tuple
如何以数组方式重写上述语句? 谢谢!
答案 0 :(得分:4)
你可以这样写:
alldata
.filter(_(0) == 10)
.map {
case Array(a, b, c) => (b, c) // from array to tuple
}
但是,你也可以同时做两件事:
alldata collect {
case Array(10, b, c) => (b, c)
}