加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 集合高级操作弃用(列表:列表[A] – a:A)

发布时间:2020-12-16 09:57:18 所属栏目:安全 来源:网络整理
导读:为什么我们有这种运算符方法 @deprecated("use `filterNot (_ == x)` instead","2.8.0") def - [B : A](x: B): List[B] //i.e. List(1,23,3,4,5) - 23 不赞成列表,但不适用于集合? Set(1,4) - 23 如果因为List在性能方面不是很适合这个操作,但我们还是应该
为什么我们有这种运算符方法

@deprecated("use `filterNot (_ == x)` instead","2.8.0")
  def - [B >: A](x: B): List[B] 
//i.e. List(1,23,3,4,5) - 23

不赞成列表,但不适用于集合?

Set(1,4) - 23

如果因为List在性能方面不是很适合这个操作,但我们还是应该避免使用长度方法.
集合运算符在未来版本的scala中会如何?

解决方法

List方法的问题在于它从未做过您期望它做的事情.天真的,我会期待的

1,2,1,3 - 1,1 == 2,3

因此

1,3 - 1 == 2,3

除了那不是你得到的;相反,你得到

1,3

(这正是filterNot给出的,你应该期待的).

由于集合的元素是唯一的,因此两种方法之间没有区别.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读