A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 沐子松/kf 中级黑马   /  2014-6-13 11:29  /  1064 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.尽量避免在经常调用的方法,循环中new对象,由于系统不仅要花费时间来创建对象,而且还要花时间对这些对象进行垃圾回收和处理,在我们可以控制的范围内,最大限度的重用对象,最好能用基本的数据类型或数组来替代对象。

2.尽量使用StringBuilder和StringBuffer进行字符串连接

3.变量定义:当要使用变量时才定义,将变量的生命周期缩小到应用的范围,这样做的好处是可以减少变量误操作的可能性,增加代码的可读性。

4.判断条件多的时候,用switch(内存中以跳转表保存),效率高,只判断一次(并不是每个case条件都判断一次,根据条件直接一次定位到符合条件的case)

5.根据实际情况调整条件顺序

实例1:假设实际情况中,大多数数据是在70-80范围内,那么每次执行以下代码时,前两个条件都进行了无效判断,浪费内存,优化后的实例2,优化原则:根据实际情况,尽量避免无效的条件判断

[java] view plaincopyprint?


  • if(x>90)  
  •    xxx  
  • else if(x>80)  
  •    xxx  
  • else if(x>70)  
  •    xxx  

实例2:

[java] view plaincopyprint?


  • if(x>70 && x<80)  
  •    xxx  
  • else if(x>90)  
  •    xxx  
  • else if(x>80)  
  •    xxx  


6.三元运算符效率高

7.利用if短路提高效率

实例1:

if(x%100==0 || x%4==0)

实例2:

if(x%4==0 || x%100==0)

假如从1循环到100,实例1前后两个条件都判断,实例2,在大多数情况下只要判断前一个条件就可以确定全式的值

1 个回复

倒序浏览
赞一个!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马