Java优化在编程中的作用可不能忽视,一个优化技术的好坏,娴熟,直接影响着这段程序的运作,那下面为大家介绍下比较高级一点的优化技术吧。
一、常用的:
1、缩减网络传输数据来缩短等待时间
2、优化循环。通过重新组织重复的子表达式来提高循环体的运行性能
3、减少使用对象的数量来提高运行性能
二、其他:
1、优化算法
比如对于默写不要求很精细的场景和算法,用简单的算法模拟。
2、采用对象池技术,提高对象的利用效率。
性能的损耗主要源于创建和释放对象,因此要避免对象的创建和释放。采用对象池技术,预先定义一个对象池,预先创建一组待使用的对象:
Enemy[5] enemy=new Enemy[5];
for(int i=0;i<5;i++){
enemy[i]=new Enemy();}
增加标志如used和reset标识Enemy的状态。需要创建对象时从对象池中获取 一个未被使用的对象并用reset方法初始化;需要释放时只需修改标志位以供下次使用即可。
3、其他优化
a.如提取字符串时,试着返回子串而不是创建一个副本。
b.尽量的少创建短期的临时对象。
c.能用库函数的就不要自己创建(库函数是优化好的)
d.Map map=new HashMap();
HashMap map=new HashMap(); //这个性能更高,重构代码
e.增强型for循环和Iterable使用时,多了一个对象的创建,慎用。
f.避免enum类型。
g.嵌入式开发时注意浮点的运用,尽量不用。(处理器是否支持浮点)
h.图片资源压缩、多张图片集中到一张图片上(比单独的和小很多,省去了每张的头文件、结束文件等数据块,合并了调色板)
4、尽可能使用基本数据类型代替对象
例如用二维数组代替一个写简单的对象。