如何定义一个接受Seq [T]和ParSeq [T]作为参数的函数?

wor*_*tor 0 scala parallel-collections

在许多情况下,我想将相同filtermap功能应用于SeqParSeq集合.但是我不想两次编写代码.

def fun(data:ParSeq[String], num_start:Int,num_end:Int) = {
    data filter { x=>
      val temp = extract_number(x)
      num_start <= temp && temp <= num_end
    }
  }
Run Code Online (Sandbox Code Playgroud)

像上面的代码一样,对于Seq[String]我需要申请的内容fun,我必须重新编写它,内容完全相同.我怎么能避免呢?

Aka*_*thi 5

试试这个

def fun(data:GenSeq[String], num_start:Int,num_end:Int) = {
    data filter { x=>
      val temp = extract_number(x)
      num_start <= temp && temp <= num_end
    }
  }
Run Code Online (Sandbox Code Playgroud)

GenSeq是trait,它是由两个延长[或实施] ParSeqSeq