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

学校教务网站的设计与实现查看网页源代码

学校教务网站的设计与实现,查看网页源代码,app开发公司部门,wordpress 登陆签到针对同一个集合#xff0c;用 stream 操作两次得到两个不同条件筛选出来的集合和map#xff0c;和一次for循环就搞定搞定的效率对比。虽然stream写起来链式操作很舒服#xff0c;但效率在不同数据量下的体现效果是不一样的#xff0c;以下为我的测试代码#xff1a;Testpu…针对同一个集合用 stream 操作两次得到两个不同条件筛选出来的集合和map和一次for循环就搞定搞定的效率对比。虽然stream写起来链式操作很舒服但效率在不同数据量下的体现效果是不一样的以下为我的测试代码Testpublic void testStreamAndFor() {List studentList new ArrayList();// 初始数据量int listSize 100000;// 测试次数以便求出平均运行时长int testTimes 5;for (int i 0; i listSize; i) {Student student new Student();student.setId(i 1);student.setStudentName(name i);student.setAge(i);studentList.add(student);}BigDecimal streamTotalRunTime new BigDecimal(0);BigDecimal forTotalRunTime new BigDecimal(0);for (int i 0; i testTimes; i) {Instant streamStart Instant.now();Map idMapOfStream studentList.stream().collect(Collectors.toMap(Student::getId, v - v));List studentAgeListOfStream studentList.stream().map(Student::getAge).collect(Collectors.toList());long streamRunTime Duration.between(streamStart, Instant.now()).toMillis();System.out.println(第 (i 1) 次 stream 耗时 streamRunTime);Instant forStart Instant.now();int size studentList.size();Map idMapOfFor new HashMap(size);List ageListOfFor new ArrayList();for (Student student : studentList) {idMapOfFor.put(student.getId(), student);ageListOfFor.add(student.getAge());}long forRunTime Duration.between(forStart, Instant.now()).toMillis();System.out.println(第 (i 1) 次 for 耗时 forRunTime);streamTotalRunTime streamTotalRunTime.add(new BigDecimal(streamRunTime ));forTotalRunTime forTotalRunTime.add(new BigDecimal(forRunTime ));}System.out.println(list长度为 listSize 总共测试次数 testTimes);System.out.println(stream总运行时间(ms) streamTotalRunTime);System.out.println(for总运行时间(ms) forTotalRunTime);BigDecimal streamAverageRunTime streamTotalRunTime.divide(new BigDecimal(testTimes ), 2, BigDecimal.ROUND_HALF_UP);System.out.println(stream平均每次运行时间(ms) streamAverageRunTime);BigDecimal forAverageRunTime forTotalRunTime.divide(new BigDecimal(testTimes ), 2, BigDecimal.ROUND_HALF_UP);System.out.println(for平均每次运行时间(ms) forAverageRunTime);}当数据量为10w测试5次的结果输出第1次stream 耗时81第1次for 耗时13第2次stream 耗时15第2次for 耗时23第3次stream 耗时7第3次for 耗时11第4次stream 耗时7第4次for 耗时13第5次stream 耗时9第5次for 耗时6list长度为100000 总共测试次数5stream总运行时间(ms) 119for总运行时间(ms) 66stream平均每次运行时间(ms) 23.80for平均每次运行时间(ms) 13.20当数据量为100w测试5次的输出结果第1次stream 耗时165第1次for 耗时1296第2次stream 耗时447第2次for 耗时62第3次stream 耗时363第3次for 耗时359第4次stream 耗时61第4次for 耗时350第5次stream 耗时389第5次for 耗时43list长度为1000000 总共测试次数5stream总运行时间(ms) 1425for总运行时间(ms) 2110stream平均每次运行时间(ms) 285.00for平均每次运行时间(ms) 422.00所有运行时长单位均为ms。综上测试结果当数据量少于百万级别的一次for循环来筛选数据效率更高当数据量达到八万级别还是使用stream来操作更加具有效率。但是小弟还是有点不明白原因是为何求高人指点一二
http://www.zqtcl.cn/news/814205/

相关文章:

  • 学校建设网站费用申请青岛平台公司
  • 平面设计师个人网站怎样登录韵网网站
  • 怎么用eclipse做网站开发推广平台取名字
  • 深圳建网站服务商广东佛山建网站
  • 网站推广公司卓立海创英文网站建设需求
  • 无锡网站营销公司简介最专业网站建设公司首选
  • 中文网站建设小组ios开发者账号申请
  • 月熊志网站福州建网站 做网页
  • 不同的网站有不同的风格宁波设计网站公司
  • 学校网站制作平台电子政务门户网站建设代码
  • 产品推广的网站怎么做网站标题与关键词
  • 青蛙网站建设wordpress修改logo
  • 网站套餐方案引擎搜索对人类记忆的影响
  • 滨州市滨城区建设局网站扎金花网站怎么做
  • 网站开发中视屏怎样编辑到网页上常州建站公司模板
  • 视频涉台互联网网站怎么做1cpu0.5g服务器用来做网站
  • 营销型网站设计官网怎么做网站优化 sit
  • 怎样获得做网站的客户免费企业网站程序上传
  • 新闻排版设计用什么软件网站seo诊断分析
  • 手机网站端域名怎样做解析一诺摄影设计
  • 网站开发行业竞争大吗郑州百度推广代运营公司
  • mvc4做网站五设计一个公司网站多少钱
  • 在什么网站可以做外贸出口劳保鞋北京 代理前置审批 网站备案
  • 邢台建设企业网站房地产宣传推广方案
  • 建设机械网站案例分析餐饮vi设计开题报告范文
  • 做本地生活网站深圳建设工程信息网站
  • C2C电商网站做博客的网站有哪些
  • 住房和城乡建设部网站 事故安微省建设厅田网站
  • 百度一下你就知道官页淘宝seo搜索引擎优化
  • 网站平台维护phpwind做的网站