Java高级优化技术

常用的:

1.优化循环。通过重新组织重复的子表达式来提高循环体的运行性能。

2减少使用对象的数量来提高运行性能。

3.缩减网络传输数据来缩短等待时间。

其他:

1.采用对象池技术,提高对象的利用效率。

性能的损耗主要源于创建和释放对象,因此要避免对象的创建和释放。采用对象池技术,预先定义一个对象池,预先创建一组待使用的对象:

Enemy[5] enemy=new Enemy[5];

for(int i=0;i<5;i++){

        enemy[i]=new Enemy();

}

增加标志如used和reset标识Enemy的状态。需要创建对象时从对象池中获取 一个未被使用的对象并用reset方法初始化;需要释放时只需修改标志位以供下次使用即可。详细请参加—Java对象池技术:http://www.cnblogs.com/devinzhang/archive/2012/01/05/2313406.html

2.尽可能使用基本数据类型代替对象

   例如用二维数组代替一个写简单的对象。

3.优化算法

   比如对于默写不要求很精细的场景和算法,用简单的算法模拟。

4.其他优化

   a.如提取字符串时,试着返回子串而不是创建一个副本。

   b.尽量的少创建短期的临时对象。

   c.能用库函数的就不要自己创建(库函数是优化好的)

   d.Map map=new HashMap();

         HashMap map=new HashMap();  //这个性能更高,重构代码

   e.增强型for循环和Iterable使用时,多了一个对象的创建,慎用。

   f.避免enum类型。

   g.嵌入式开发时注意浮点的运用,尽量不用。(处理器是否支持浮点)

   h.图片资源压缩、多张图片集中到一张图片上(比单独的和小很多,省去了每张的头文件、结束文件等数据块,合并了调色板)

原文地址:https://www.cnblogs.com/makeryan/p/2498229.html