当前位置: 首页 > news >正文

免费ppt模板免费网站深圳建专业网站

免费ppt模板免费网站,深圳建专业网站,广州市住房城乡建设部门户网站,linux 装wordpress我们所有人都广泛使用了Collection类#xff0c;例如List#xff0c;Map及其派生版本。 每次使用它们时#xff0c;我们都必须遍历它们以找到某个元素或更新这些元素#xff0c;或者找到匹配某个条件的不同元素。 考虑如下所示的人员列表#xff1a; ListPerson … 我们所有人都广泛使用了Collection类例如ListMap及其派生版本。 每次使用它们时我们都必须遍历它们以找到某个元素或更新这些元素或者找到匹配某个条件的不同元素。 考虑如下所示的人员列表 ListPerson personList new ArrayList(); personList.add(new Person(Virat, Kohli,22)); personList.add(new Person(Arun, Kumar,25)); personList.add(new Person(Rajesh, Mohan, 32)); personList.add(new Person(Rahul, Dravid, 35)); 要找出年龄大于30岁的所有Person实例我们可以这样做 ListPerson olderThan30OldWay new ArrayList(); for ( Person p : personList){if ( p.age 30){olderThan30OldWay.add(p);} } System.out.println(olderThan30OldWay); 这给了我输出为 [Rajesh Mohan, 32, Rahul Dravid, 35] 该代码易于编写但是是否更冗长一些尤其是在迭代部分 我们为什么要迭代 如果有一个API可以迭代内容并给我们最终结果即我们给出源List并使用一系列方法调用来获得我们正在寻找的结果List那不是很酷吗 是的这在其他语言例如ScalaGroovy中是可行的它们支持传递闭包也支持内部迭代。 但是Java开发人员有解决方案吗 是的通过引入对Lambda Expressionsclosures的支持和增强的Collection API来利用lambda Expression支持可以解决这个确切的问题。 令人遗憾的消息是它将成为Java 8的一部分并且将需要一些时间才能进入主流开发。 利用Java 8对上述情况的增强 正如我在增强Collections API以支持Lambda Expression的使用之前所说的那样可以在这里阅读有关它的更多信息。 JDK团队没有将所有新的API添加到Collection类而是创建了一个称为“ Stream”的新概念并在该类中添加了大多数API。 “流”是从创建集合的集合中获取的元素序列。 要了解有关Stream类起源的更多信息请参考此文档 。 为了实现从使用Java 8中的增强功能开始的示例我们将使用一些新的API即streamfiltercollectCollectors.toCollection。 stream 使用在其上调用此API的集合来创建Stream类的实例。 filter 此方法接受一个lambda表达式该表达式接受一个参数并返回一个布尔值。 编写此lambda表达式可以替代实现Predicate类。 collect 此方法有2个重载版本。 我在这里使用的是一个Collector实例。 此方法获取流的内容并构造另一个集合。 此构造逻辑由收集器定义。 Collectors.toCollection 收藏家是一个工厂收集 。 并且toCollection采用Lambda表达式/方法引用该引用应返回Collection类的任何派生类的新实例。 简要介绍所使用的API之后让我展示与第一个代码示例等效的代码 ListPerson olderThan30 //Create a Stream from the personListpersonList.stream().//filter the element to select only those with age 30filter(p - p.age 30).//put those filtered elements into a new List.collect(Collectors.toCollection(() - new ArrayListPerson())); System.out.println(olderThan30); 上面的代码同时使用了内部迭代和lambda表达式使其直观简洁且令人耳目一新。 如果您不熟悉Lambda表达式的概念请查看我以前的文章 其中简要介绍了Lambda表达式。 参考从Javas 合作伙伴 Mohamed Sanaulla的Experiences Unlimited博客中提取Java集合的元素-Java 8方法 。 翻译自: https://www.javacodegeeks.com/2013/03/extracting-the-elements-of-the-java-collection-the-java-8-way.html
http://www.pierceye.com/news/696611/

相关文章:

  • 服装设计素材网站大全做旅游的网站的要素
  • 企业网站建设报价清单深圳小程序建设公司
  • 给人做传销网站开发平台软件要多少钱
  • 腾讯建设网站视频视频视频手机网站报价表
  • 门户网站建设要求南京seo公司教程
  • 网站建设制作要学什么软件福建省城乡建设厅网站
  • 网站遇到攻击时应该怎么做网络广告推广平台
  • 老牌网站建深圳市建设工程服务交易中心
  • 网页界面设计布局青岛百度关键词优化
  • 彩票网站APP建设seo为什么不景气了
  • ps做网站标签wordpress 角色和权限管理
  • 网站建设情况报告范文微网站可以做成域名访问
  • 增城网站公司电话西安高端网站建设首选
  • 信息流广告素材网站零基础学做网站
  • 北京服饰网站建设实训百度搜索引擎的总结
  • 营销型网站建设的一般过程包括哪些环节?体育视频网站建设
  • 门户网网站seo怎么做电子商务平台怎么注册
  • 凡科网站插件代码阿里云网站备案后
  • 网站用什么系统好用免费网站建设找哪家
  • 网站到期续费吗网站开发是培训
  • 别人帮做的网站怎么修改怎么做产品推广和宣传
  • 国内返利网站怎么做php建设网站工具
  • 网站设计教程文档创业商机网农村
  • 宁夏交通建设质监局官方网站免费注册二级域名的网站
  • 网站门户设计网站建设有没有做的必要
  • 建模师的就业前景整站优化工具
  • 微信公众号怎么做链接网站网站404 原因
  • 安卓手机做服务器网站网站设计时多页面切换时什么控件
  • 长沙正规网站建设价格网站推广怎么发外链
  • 专业版装修用什么网站做导航条深圳网站制作易捷网络