在我的团队中,我经常看到我的队友在写代码时...
但这种方法的缺点是我们必须明确指出一般情况。
所以,基于上述所有内容,我有两个问题:
1)是否有另一种(更好的)方法来完成同样的事情?
2)如果没有,应该优先考虑上述两个选项中的哪一个?
list.filter(_.isInstanceOf[T]).map(_.asInstanceOf[T])
但是这对我来说似乎有些冗余。
如果我们知道过滤列表中的每个内容都是 T
的实例,那么为什么还需要将其显式转换为这样的呢?
我知道另一种替代方法,那就是使用match
。
例如:
list.match {
case thing: T => Some(thing)
case _ => None
}
但这种方法的缺点是我们必须明确指出一般情况。
所以,基于上述所有内容,我有两个问题:
1)是否有另一种(更好的)方法来完成同样的事情?
2)如果没有,应该优先考虑上述两个选项中的哪一个?