我为什么不使用并放弃jdk8的新特性?
来源:互联网 发布:淘宝卖燕窝 编辑:程序博客网 时间:2024/04/29 15:14
今天,公司任务不重,本打算调优一下项目,因为直播项目的原因,不得不对性能上有更高的要求,哪怕提高
0.1ms的执行效率。无意之间对for循环嵌套这块发起了疑问,心想,能否可不用for循环,于是无意间去搜搜是否可能
有替换for循环的新事物,想想都好激动呢!于是有以下的结果:
------------------------------------------我是很粗很粗的分割线-------------------------------------------------
对于摒弃使用某度作为搜索工具的同行们,请忽略这一细节,然后我就开始学习了,学习了,习了,了。。。不多说废话,直接贴代码:
@Testpublic void testStreamJ8New(){long start,end,sum = 0;//定义执行开始时间,结束时间,总时间List<Integer> list = new ArrayList<Integer>();Stream.iterate(1, items -> items + 1).limit(5000000).forEach(item -> list.add(item));//五百万的记录//目的:过滤小于1024的数for(int i = 1;i <= 100;i++){//循环一百遍,汇聚100次总的执行时间start = System.currentTimeMillis();//方案一://List<Integer> list2 = list.stream().filter(item -> item >= 1024).collect(Collectors.toList());//System.out.println(list2.size());//方案二:List<Integer> list2 = new ArrayList<Integer>();for (Integer i2 : list) {if(i2 >= 1024)list2.add(i2);}//System.out.println(list2.size());end = System.currentTimeMillis(); sum += (end - start);}System.out.println((sum/100) + "ms");//计算平均结果}
我等待了很久很久很久很久,,终于,,结果,却,,很让人失望,明显for循环平均执行时间要短一些,所以我放弃了jdk8的新特性,自从oracle收购了sun公司之后,觉得就如同乔布斯去世之后的苹果。。如果各位大神想撕逼,欢迎留言,不服来战!!这样我们才能更好的进化!!
阅读全文
0 0
- 我为什么不使用并放弃jdk8的新特性?
- 关于JDK8的新特性
- JDK8新特性:使用Optional避免null导致的NullPointerException
- 不知道为什么,我就是不想放弃!
- jdk7和jdk8的一些新特性
- JDK5至JDK8的新特性
- JDK7与JDK8的新特性
- 关于jdk8新特性的郝博文
- JDK5至JDK8的新特性
- jdk7和jdk8的一些新特性
- 我为什么放弃使用MyBatis3的Mapper注解
- jdk8新特性
- JDK7、JDK8新特性
- JDK8新特性
- JDK8新特性-Lambda
- JDK8新特性-Stream
- JDK8新特性
- JDK8新特性
- request.getServletContext()的问题
- [DeeplearningAI笔记]改善深层神经网络_优化算法2.3_2.5_带修正偏差的指数加权平均
- 源码解读----之-----k_means相关方法(被k_means调用)
- 9.5 机器人的规范
- 程序员们,我们的节日来了!1024让我们狂欢吧!
- 我为什么不使用并放弃jdk8的新特性?
- java 覆盖和隐藏
- jmeter 断言
- netty源码分析之服务端
- 如何在固定的成本条件下实现更多的资源配置
- Spring Boot快速入门
- 高级C语言教程编码风格
- Tomcat报错:ERROR:transport error 202: gethostbyname: unknown host
- myeclipse下载git插件