8、不要在循环中使用try…catch…,应该把其放在最外层
除非不得已 。如果毫无理由地这么写了,只要你的领导资深一点、有强迫症一点,八成就要骂你为什么写出这种垃圾代码来了
9、如果能估计到待添加的内容长度,为底层以数组方式实现的集合、工具类指定初始长度
比如ArrayList、LinkedLlist、StringBuilder、StringBuffer、HashMap、HashSet等等,以StringBuilder为例:
(1)StringBuilder() // 默认分配16个字符的空间
(2)StringBuilder(int size) // 默认分配size个字符的空间
【java代码优化有哪些 java程序优化方法】(3)StringBuilder(String str) // 默认分配16个字符+str.length()个字符空间
可以通过类(这里指的不仅仅是上面的StringBuilder)的来设定它的初始化容量,这样可以明显地提升性能 。比如StringBuilder吧,length表示当前的StringBuilder能保持的字符数量 。因为当StringBuilder达到最大容量的时候,它会将自身容量增加到当前的2倍再加2,无论何时只要StringBuilder达到它的最大容量,它就不得不创建一个新的字符数组然后将旧的字符数组内容拷贝到新字符数组中—-这是十分耗费性能的一个操作 。试想 , 如果能预估到字符数组中大概要存放5000个字符而不指定长度,最接近5000的2次幂是4096,每次扩容加的2不管,那么:
(1)在4096 的基础上 , 再申请8194个大小的字符数组,加起来相当于一次申请了12290个大小的字符数组,如果一开始能指定5000个大小的字符数组,就节省了一倍以上的空间
(2)把原来的4096个字符拷贝到新的的字符数组中去
这样,既浪费内存空间又降低代码运行效率 。所以,给底层以数组实现的集合、工具类设置一个合理的初始化容量是错不了的,这会带来立竿见影的效果 。但是 , 注意,像HashMap这种是以数组+链表实现的集合,别把初始大小和你估计的大小设置得一样,因为一个table上只连接一个对象的可能性几乎为0 。初始大小建议设置为2的N次幂,如果能估计到有2000个元素,设置成new HashMap(128)、new HashMap(256)都可以 。
10、当复制大量数据时,使用System.arraycopy()命令
北大青鸟java培训:程序员需要关注哪些代码优化?对于程序员来说java代码优化有哪些 , 软件编程开发代码质量能够直接反应出一个程序员能力的高低java代码优化有哪些,下面IT培训就一起来了解一下,在代码质量优化方面,我们需要关注哪些问题 。
1.吹毛求疵般地执行编码规范严格执行代码编写规范,可以使一个项目乃至一个公司的代码具有完全统一的风格,就像同一个人编写的一样,而且命名良好的变量,函数 , 类和注释 , 也无疑可以提高代码的可读性.具体落实到执行层面,可以参照Google的编码规范或者java官方的编码规范,网上可以找到,关键是要严格遵守,并且在codereview时,严格要求,没有按照规范的一定要指出并且要求修改.实际情况往往是虽然大家都知道优秀的代码规范是怎样的 , 但在具体写代码的过程中,却执行的差强人意,很多情况是认识上不够重视,觉得一个变量或者函数的命名成哪样关系不大 , 所以不够推敲 , 注释很多也都不写,codereview的时候大家也都事不关己心态,或者觉得没必要太抠细节,导致慢慢的整个codebase变得越来越差.所以这里还是要强调一下,细节决定成败,提高团队对代码规范的认同及其严格的执行是关键.2.编写高质量的单元测试单元测试是容易执行,且对提高代码质量见效快的方法之一还 。
但还是有很多公司对单元测试重视不够,包括一些大的互联网公司,不写或者随便写写 。
推荐阅读
- erp系统mro,erp系统mrp
- 华为手机p40pro更新鸿蒙3,华为p40pro 更新鸿蒙
- 鸿蒙系统出现呼叫转移,鸿蒙系统呼叫转移怎么设置不了
- 新媒体如何推动现当代文学,如何推动新媒体的发展
- java代码怎么变成游戏 如何将java代码变成应用程序
- 垃圾公众号文章,垃圾公众号怎么永远删除
- oracle表数据删不了有索引,oracle删除表时索引是否删除
- jquery.pin.js用法,jqueryuiminjs
- lstr函数python python中ls函数怎么用