Scala:为什么删除被弃用而不支持filterNot?

ono*_*nof 6 scala list immutability deprecated

scala> List(1, 2, 3) remove (_ < 2)
<console>:8: warning: method remove in class List is deprecated: use `filterNot'
 instead
       List(1, 2, 3) remove (_ < 2)
                     ^
res0: List[Int] = List(2, 3)
Run Code Online (Sandbox Code Playgroud)

我不明白为什么这个被弃用了.不可改变应该很清楚remove会返回一个新列表.在scaladoc中,您只能找到:

不推荐使用:改用filterNot'

axe*_*l22 14

这是因为该方法remove不一致 - 对于某些集合,它执行了可变的就地删除,而对于不可变集合,它创建了一个新版本.具有就地(批量)修改的方法应仅适用于可变集合.