搜索 Scala 数组以找到一个值并将其映射到(没有值的数组,值)

Searching Scala array to find a value and mapping it to (Array without the Value,Value)

我有一个以下形式的 Scala 数组:

temp: Array[(Array[String], Long)] 
# Eg.  Array((Array(attr1,1.0,attr2),15),(Array(1.0,attr5),15),(Array(attr3,attr4,0.0),15),(Array(attr3,attr4),5))

我需要获取这个数组并将其映射到

temp: Array[(Array[String],String, Long)] 
# Eg.  Array((Array(attr1,attr2),1.0,15),(Array(attr5),1.0,15),(Array(attr3,attr4),0.0,15),(Array(attr3,attr4),NULL,15))

我正在搜索字符串 1.0 和 0.0 并创建一个新数组,其中 1.0 和 0.0 从原始数组中删除。如果 1.0 和 0.0 不存在,则使用 NULL 作为值。 有没有简单的方法来做到这一点?

将集合中的元素从一种类型更改为另一种类型?听起来像 map.

temp.map{ case (ss,l) =>
  ( ss.filterNot(_ matches "[01]\.0")
  , ss.find(_ matches "[01]\.0").getOrElse("NULL")
  , l )
}  // res0: Array[(Array[String], String, Long)]