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

Scala中可变集合的迭代器?

发布时间:2020-12-16 09:27:07 所属栏目:安全 来源:网络整理
导读:我 just发现Java中有这样的迭代器. Scala是否具有带“set”和“remove”方法的迭代器 迭代(和修改)像数组一样的可变集合? 如果没有这样的迭代器,那么有充分的理由吗? 解决方法 Scala目前没有这样的迭代器. 我怀疑它不是因为 这样的迭代器不是通用的(即它们
我 just发现Java中有这样的迭代器.
Scala是否具有带“set”和“remove”方法的迭代器
迭代(和修改)像数组一样的可变集合?
如果没有这样的迭代器,那么有充分的理由吗?

解决方法

Scala目前没有这样的迭代器.

我怀疑它不是因为

>这样的迭代器不是通用的(即它们只能用于可变集合)但是使用命名空间.>因为与takeWhile这样的懒惰操作一起思考它们会很快变得混乱(x.takeWhile(_< 5).add(5)应该做什么总是显而易见的?一方面,操作的顺序看起来像你应该先取,然后再添加;但另一方面,take是懒惰的,而add通常可以立即实现,所以将它们组合起来这将是天真的危险.)>这样的迭代器在算法上只是一个很好的想法,有一组非常专业的集合(基本上只有链表和树;无论如何,添加和删除在数组上使用都是愚蠢的,并且在集合上没有多大意义).>当普遍性和速度之间出现内在冲突时,Scala集合库通常倾向于普遍性.这种迭代器使您能够以更具体的方式考虑集合(即与底层数据结构更紧密地联系在一起).您可以想象一个库可以做出不同的选择,但是对于一个最有用(并且仍然非常高性能)的库,Scala集合库理念可能是更好的方法.

(编辑:李大同)

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

    推荐文章
      热点阅读