`
jobar
  • 浏览: 341069 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

集合框架(1)-Java集合框架走向何方?

 
阅读更多
Java集合框架走向何方?

到Java8发布前,Java集合框架的历史将超过15年,并且它成功的经受住了考验,但其背后的一些假设随着Java程序执行环境的变化正越来越多的遭受质疑。最大的变化是在硬件环境中,设计师已经把他们的注意力从提高各个内核的时钟速度并放置更多内核的目标转移到同一个芯片上。要从大规模多核处理器中获得可用潜在性能的提升,应用程序必须能够将它们的工作量分派到许多不同的线程中,使每个线程能够在“自己的”核心独立运行的。类库设计者需要将他们的注意力转移以利用这一变化,因为在许多java程序中最密集的活动是批处理集合元素,Java集合框架是这个变革的中心。

从Java集合框架使用的分析来看,显示了一种很常见的模式,从数据源(数组或者集合)批量处理,然后重复的应用诸如对数据过滤和映射的转换操作,最后结束于一种单一的操作比如数字求和等。目前使用的这种模式,需要创建临时集合来保存这些变换的中间结果。然而,这种风格的处理可以重铸使用众所周知的“管道和过滤器”的格局,由此而来的显著优势包括:消除中间变量,减少了中间存储,惰性计算,更灵活且可组合的操作定义。此外,如果适当定义管道中的每个操作,管道作为一个整体通常可以自动并行化(在多核处理器上分拆并行执行)。管道的角色,就像流水线作业之间的连接器,将由Java8库中的Stream接口来实现;研究这个接口将明白管线的工作原理。

本文着重描述了Java集合框架在Java8中的演变。这将导致一种针对集合编程的更强大功能的风格,由Stream接口方法定义的习惯用法将替换原有的值变化。

原文链接:http://www.lambdafaq.org/where-is-the-java-collections-framework-going/
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics