android高性能编码

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 15:07   24   0

http://blog.csdn.net/guolin_blog/article/details/42318689  学习郭霖大神博客

一、避免创建不必要对象

1、拼接字符串使用StringBuilder或者Stringbuffer要比+连接符性能高,因为加号连接符会创建多与对象,拼接的字符串越长,加号连接符的性能越低。

2、尽量使用基本数据类型代替封装数据类型,int比Integer更加高效。

二、静态优于抽象

如果不需要访问一个对象中的某些字段,只是想调用某个方法去完成一项通用的功能,那么可以将这个方法设置成静态方法,调用速度提升15%-20%,同时避免创建不必要的对象,而且可以放心的调用静态方法。

三、对常量使用static final修饰符

声明为静态常量内存在类生成的的时候分配,调用的时候节省内存资源开销。

四、避免内部调用Getters/Setters方法

直接访问某个字段可能要比通过getters方法来去访问这个字段快3到7倍

例如:

  1. public class Calculate {
  2. private int one = 1;
  3. private int two = 2;
  4. public int getOne() {
  5. return one;
  6. }
  7. public int getTwo() {
  8. return two;
  9. }
  10. public int getSum() {
  11. return getOne() + getTwo();
  12. }
  13. }
  14. 远远没有下面这段代码代码高效,好像我也这样干过,当时应该没意识到这个效率问题。
  1. public class Calculate {
  2. private int one = 1;
  3. private int two = 2;
  4. ......
  5. public int getSum() {
  6. return one + two;
  7. }
  8. }


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP