Załóżmy, że masz listę (1, "1"), wpisano List [Any], co jest oczywiście poprawne i oczekiwane. Teraz, jeśli zamapuję taką listę, wynikowy typ to List [Int], który również jest oczekiwany. Moje pytanie brzmi, czy istnieje odpowiednik mapy dla filtra, ponieważ poniższy przykład spowoduje wyświetlenie listy [Any]. czy to możliwe? Zakładam, że można to rozwiązać w czasie kompilacji i prawdopodobnie nie w czasie wykonywania?Typ kolekcji Scala dla filtra
scala> List(1, "1") filter {
| case x: Int => true
| case _ => false
| }
Dlaczego to możliwe tylko ze strażnikiem? –
Przepraszam, to był naprawdę głupi komentarz. Ale dlaczego filter() nie generuje wyniku takiego jak partialMap? –
@ '' '' nie zmienia typu kolekcji, ponieważ nie modyfikuje jej elementów. –