五、数据定义、运算逻辑优化
多使用局部变量
- 调用方法时传递的参数以及在调用中创建的临时变量都保存在栈 (Stack) 里面,读写速度较快。
- 其他变量,如静态变量、等,都在堆实例变量 (heap) 中创建,读写速度较慢。
清单 12 所示代码演示了使用局部变量和静态变量的操作时间对比。
位运算代替乘除法
位运算(>> <<)是所有的运算中最为高效的。
一维数组代替二维数组
JDK 很多类库是采用数组方式实现的数据存储,比如 ArrayList、Vector 等,数组的优点是随机访问性能非常好。一维数组和二维数组的访问速度不一样,一维数组的访问速度要优于二维数组。在性能敏感的系统中要使用二维数组,尽量将二维数组转化为一维数组再进行处理,以提高系统的响应速度。
减少循环次数
使用布尔逻辑运算符代替位运算符
if条件判断,使用&& 代替&(位运算) 使用|| 代替|(位运算)
&& || 经过编译器优化,短路
使用 arrayCopy()
http://zhidao.baidu.com/link?url=QxxAn0ahwN5OM7_ZTmKkN17KnmMiZa7zqkVGccj_DkJ3-vvzTdlx4RTfSddGKUUEs3cBm7CCgLzowwoK45kRK_
http://mp.weixin.qq.com/s?__biz=MjM5NzMyMjAwMA==&mid=207904935&idx=1&sn=54e087dbe4ebd4aad9fac019754d1b37&scene=23&srcid=0903QQgf7yVkVI6Tbfrs8Pni#rd
时间: 2024-12-25 23:57:58