如何将List[Any]
List[Any]
作为参数传递给List.concat
?我的代码是:
List.concat((a filter (x => x.getClass == a.getClass)): _*)
其中a
是List[Any]
,而(a filter (x => x.getClass == a.getClass))
应该成为列表列表。我得到的错误是type mismatch; found List[Any] required: Seq[Traversable[Any]]
。
是否有传递参数列表的元素,或将列表转换为序列?谢谢。
答案 0 :(得分:0)
您对: _*
的意图是什么?删除它,你的代码应该工作。
您实际上可以将List [Any]传递给concat,如下所示。
val list1 = List("Abby", "Jim", "Tony")
val list2 = List[Any](90,"Tom")
val ret = List.concat(list1,list2)
您的代码问题,我想是: _*
。另一个问题是a filter (x => x.getClass == a.getClass)
,元素与容器的类型很小,在你的情况下是List。这是你的真实意图吗?您希望List [Any]包含类型为List [Any]的元素吗?
以下代码有效,我在http://scalass.com/tryout验证了它们。
val list = List[Any](90,"Tom")
val r = List.concat((list filter (x => x.getClass == "".getClass)))