0
をキャストしないようにするにはどうすればランニングの状態で、時には自分自身を発見した:スカラ:インスタンスをチェックして、
someCollection.filter(_.isInstanceOf[Foo]).asInstanceOf[List[Foo]]
コレクションがFoo
と最終フィルター処理されたコレクションをキャストのインスタンスを持っている場合だけをチェックします。
もっと良い方法がありますか(現在のデータ構造を変更できないとします)?
私が試した:
someCollection.map(case c: Foo => c)
が、それは残りのすべての例(case _ =>
)を探しているコースのよう実行時にはMatchingError
を返します。