list – Scala:为什么删除不推荐使用filterNot?
发布时间:2020-12-16 19:11:24 所属栏目:安全 来源:网络整理
导读:scala List(1,2,3) remove (_ 2)console:8: warning: method remove in class List is deprecated: use `filterNot' instead List(1,3) remove (_ 2) ^res0: List[Int] = List(2,3) 我不明白为什么这个被弃用了.作为不可变的,应该很清楚remove会返回一个新的
scala> List(1,2,3) remove (_ < 2) <console>:8: warning: method remove in class List is deprecated: use `filterNot' instead List(1,3) remove (_ < 2) ^ res0: List[Int] = List(2,3) 我不明白为什么这个被弃用了.作为不可变的,应该很清楚remove会返回一个新的列表.在scaladoc,您只能找到:
解决方法
这是因为删除方法并不一致 – 对于某些集合,它执行了可变的就地删除,而对于不可变集合,它创建了一个新版本.具有就地(批量)修改的方法应仅适用于可变集合.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |