范文健康探索娱乐情感热点
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

JAVA中for循环优化的思考

  一、前言
  最近会使用到很多的数据处理,其中多出使用了for循环操作,于是思考了一下性能和优化相关的东西,遂有此文...
  二、循环的性能排序
  在之前的文章中已经对此作了简单的测试,链接:
  for循环、增强for循环、foreach、lambda循环哪个效率高
  结论:正常循环 > lambda > 增强for循环 > foreach
  三、循环中的注意事项
  3.1、以小驱大
  这个和数据库关联查询是一个道理的,用小表驱动大表的效率是更高的。附代码如下:           /* 外大内小 */         Long start = System.nanoTime();         for (int i = 0;i < 1000; i++) {             for (int j = 0;j < 10; j++ ) {              }         }         Long end = System.nanoTime();         System.out.println("外大内小循环耗时:" + (end - start));          /* 外小内大 */         start = System.nanoTime();         for (int i = 0;i < 10; i++) {             for (int j = 0;j < 1000; j++ ) {              }         }         end = System.nanoTime();         System.out.println("外小内大循环耗时:" + (end - start));
  耗时情况如下:
  外大内小循环耗时:181410
  外小内大循环耗时:93572
  3.2、不在循环中做复杂的操作
  我们不建议在循环中进行复杂的逻辑操作,这样每一次循环时都增加了性能损耗的,附代码:
  Tips:我们参照"以小驱大"的性能基准!           /* 不要在循环中做复杂操作 */ start = System.nanoTime(); for (int i = 0;i < 10; i++) {     for (int j = 0;j < ((10 * 10 * 10) > 100 ? 1000 : 100); j++ ) {      } } end = System.nanoTime(); System.out.println("在循环中做了复杂操作耗时:" + (end - start));
  耗时情况  如 下:
  在循环中做了复杂操作耗时:94176
  3.3、不在循环中做无用操作
  这个和上面的情况是有些类似的,我们不建议在循环体中做一些可有可无的操作,如:变量定义、无效输出、无效逻辑运算等。
  附代码:
  Tips:我们参照"以小驱大"的性能基准!   /* 不要在循环中做无效操作 */ start = System.nanoTime(); for (int i = 0;i < 10; i++) {     for (int j = 0;j < 1000; j++ ) {         Double.valueOf(j);         Long.valueOf(i);     } } end = System.nanoTime(); System.out.println("循环中做了无意义操作耗时:" + (end - start));
  耗时情况如下:
  循环中做了无意义操作耗时:2483294
  3.4、不要在循环体重做异常捕获
  每一次的循环都做异常处理是比较耗时的,建议放在循环外部进行异常处理。(如果需要多循环分支做异常处理怎么办?)
  Tips:我们参照"以小驱大"的性能基准!   /* 不要在循环中异常处理 */ start = System.nanoTime(); for (int i = 0;i < 10; i++) {     for (int j = 0;j < 1000; j++ ) {         try {             int a = i - j;         }catch (Exception e){             e.printStackTrace();         }     } } end = System.nanoTime(); System.out.println("循环中做了异常捕获耗时:" + (end - start));
  耗时情况:
  循环中做了异常捕获耗时:200728
  3.5、数据分类处理
  如果循环数据能进行分类处理,可以使用关键标识作为Key,然后转成Map进行分类操作处理,必要时可以按照分类开启多线程。
  eg:2021年所有员工的业务数据统计。可以做成员工为Key数据为Value的数据进行处理。
  3.6、循环中少做外部调用
  在循环体中尽量少去做RPC调用、数据库查询等。可以考虑批量操作,比如MP的"saveBatch"、"updateBatchById"等。
  3.7、做好前置判断
  循环中,如果对属性做检测的,尽量在开始的时候进行,这样可以过滤掉后续的无效逻辑处理。
  3.8、删除使用过的数据
  如果确认不会对当前的数据做后续操作,可以在数据子项使用后就删除掉,这样可以通过减少数据长度的情况下减少循环操作。
  更多精彩,请持续关注:光华技术

苹果手机好处是什么?我使用过两款苹果手机,苹果6s和苹果xr说说我的感觉操作简单苹果手机的操作很简单,很多设置都很明确,要找什么设置使用下滑搜索很容易找到。对比我使用的安卓手机下滑搜索竟然要求我允许定终于和国产骁龙888旗舰价格持平!三星S21直降1200元,值得买吗?对于想要选购手机的小伙伴来说,可能很少有人会把三星作为参考对象。三星的产品非旗舰不给力,旗舰又太贵,这可能也是三星难以打开国内市场的原因。不过现在最新一代骁龙8Gen1新品快要上市比特币24小时内价格暴跌20大约有142亿资金爆仓今日,据媒体报道,行情数据显示,比特币指数一度最低触及42587。8美元枚,24小时最大跌幅达20。比特币兑美元价格24小时最大跌幅达28。46,最低触及40681。80美元枚。以宝兰德子公司成立,受邀入驻山东航天人工智能安全芯片研究院宝兰德子公司成立,受邀入驻山东航天人工智能安全芯片研究院近日,宝兰德子公司成立,受邀入驻山东航天人工智能安全芯片研究院。山东航天人工智能安全芯片研究院(简称航芯院)是航天科工集团与农民真的很喜欢讲大道理吗?不,农民本身没有什么文化,也不怎么喜欢讲什么大道理,不会收集证据,这样农民的弊端。农民喜欢讲体谅,包容,互相忍让。谢邀!农民淳朴,善良,忠诚,友爱,生活只要是有吃,有渴,有用,有住氢能源是大投资机会吗?目前看成本太高,渗透率太低,还太早期文陈嘉伟氢能源能否像新能源汽车一样带来一轮大的投资机会?这是很多投资者关心的问题,要回答这个问题,需要我们深入理解赛道投资,即如何理解和判断一个赛道是否会迎来一轮大行情,赛道投资有不久的将来,电动汽车使用成本将会大幅增加前两天打滴滴,遇上一辆广汽传祺新能源,司机颇为健谈,聊天得知他是专职开滴滴的。问起收入,话语听出自豪感,在我们这个三四线小城市,月收入过万,绝对秒杀绝大多数打工人。又聊起使用成本,薪资必须保密,不然轻则通报重则开除,老板们在害怕什么撰文财经天下周刊作者周享玥编辑游勇被处罚的员工要是我们也可以像苹果那样公开讨论薪资该多好啊。时隔四个多月,再次在社交平台上看到有关密薪制的热搜,尤其是苹果公司那条宣布允许员工公开讨关于413互联网医疗集团模式的必要性与可行性研究413互联网医疗集团模式原称413移动医疗模式(该模式的论文发表在2015第6期中国卫生杂志上)。之所以更名,是因为现名比原名更容易让人理解。笔者建议国家先在我国部分城市和地区采用什么品牌的空调用的人多?我小区都是海尔品牌占比每个区域有不同的占比。例如,湖北地区家用中央空调市场,日立占有率是排名第一的。其实选空调有几个点自己要注意,第一就是产品的安装,因为中央空调藏在吊顶里,安装不腾冲的火山为什么有名?一直以来,云南腾冲有着天然地质博物馆的美誉,腾冲是中国非常有名的火山密集区,这里的无头山,十有八九为火山。根据1993年新华社所发布的一条消息可知,腾冲火山群正处于休眠状态,也就是
全世界最畅销10款手机,国内仅有这个品牌上榜,独占三席近日,知名数据统计机构Canalys发布了2020第三季度全球最畅销十款手机榜单,被三星,苹果以及小米包揽。其中小米公司旗下Redmi品牌就独占三席,分别是RedmiNote9Re360浏览器推出VIP会员功能一年99。9元,网友太值了近日,360安全浏览器推出VIP会员功能,可享受6大特权DoH安全防劫持智能隐私防护体系DNT防跟踪支持国密SSL协议专属反馈渠道提前试用最新版。价格方面,一个月9。9元,首充1。城会玩!国货新出夜生活玩具,90后开箱测评爽翻天前几天,我去北京旅游,顺便和远房表哥叙旧。他通过努力奋斗在北京扎了根,虽然不富裕,但他眼界宽阔,谈吐优雅。我们都是米粉,所以共同话题很多。晚上出去玩的时候,表哥给了我一个盒子。我一国货之光!新款红旗H5将于9月28日上市,搭载全新3。0网联系统在一汽红旗的产品序列中,红旗H5算是主要的销量贡献者,今年18月份累计卖出52879辆,占一汽红旗总销量的29。74,在国内中型车市场中排名第12位,而排在它之前的大多都是合资车,MIUI再次发布公告,多项问题已经找出,正在快速修复中手机系统的优化能力真的非常关键,因为如今的产品本身同质化已经变得十分严重,消费者在选择的时候,真的很难进行区分。而且系统也变得很重要,一旦出现大问题的话,那么真的会影响用户的体验,网盘已死,NAS太多?保姆级选机教程!快速学会搭建家庭影音中心大家好,我是加勒比考斯,是一个NAS领域的老司机。以前是负责NAS板块的小编一枚,有幸玩过众多品牌的NAS,包括有威联通群晖华芸西部数据铁威马以及Drobo等。后面持续输出众多干货雪佛兰110周年以传奇之名书写辉煌文岸青你知道世界上第一辆SUV诞生于哪吗?你知道什么车被称为美国国民车吗?你知道变形金刚中大黄蜂的汽车形态来自于哪个品牌吗?上述三个问题都有着一个共同的答案雪佛兰。从1911到20怕油烟倒灌?海尔变频油烟机高楼住宅低层畅排不倒灌双11预售已结束,不少人正忙着付尾款。今年购买油烟机的用户不只参考价格,更看中油烟机升级带来的速吸油烟体验,变频油烟机能防止油烟倒灌等升级体验,今年双11期间搜索量倍增。在天猫渠道Intel第三次挑战中科院微电子所核心专利失败,或面临数亿元赔偿作者黄莺9月3日,国家知识产权局发出第51731号复审决定,裁定由英特尔(中国)有限公司于2020年12月4日提出的,针对中国科学院微电子研究所的发明名称为半导体器件及其制作方法及懂衣料,会养护!卡萨帝思享荟发布银河洗干组合过去,高端衣物只能送干洗店护理店,是因为没有更好的选择。而现在,随着卡萨帝生态洗护场景的落地,高端人群的养护诉求终于得以解决。卡萨帝让您在家就能完成衣物养护。6月25日,新征途爱不界读丨台积电又出新工艺N4P芯片,或首发于苹果A16,性能提升11欧界报道全球芯片代工一哥台积电这几年赚得喜笑颜开,同时也加快了制程工艺的突破。10月26日,台积电再次官宣,称推出了最新的高性能工艺制程芯片N4P。乍一听,莫非是4nm的突破进展?