Я пытаюсь получить функцию, которая возьмет «тип» в качестве параметра, а затем вернет все вхождения этого типа.Фильтр для различных типов scala
val a = List(1 , 2 , true, "Hello")
def f(a: List[Any], b: ???): List[Any] = {
a.filter(p => p.isInstanceOf[b])
}
f(a,???)
Так что f(a,Int)
вернется List(1, 2)
'Manifest' устарел, вместо этого вы должны использовать теги типов. См. [TypeTags and Manifests] (http://docs.scala-lang.org/overviews/reflection/typetags-manifests.html). Согласитесь, что обычно не рекомендуется иметь «Список [Любой]». – Jesper
'ClassTag' работает, когда сопоставление образцов на' T', я не думаю, что 'TypeTag' делает. –