志在指尖
用双手敲打未来

Android 代码性能优化技巧

目前,Android2.2的JIT性能已经大幅提升,但对于旧版本的程序来说,提高Java执行的效率,还有很多语言功能。
今天Android123提到的不是语法糖,但基本问题是Java1.5之后会有明显的改进。以下示例来自SDK:staticAndroid
Foo类{
IntmSplat;
}
Foo[]mArray=…上面的静态类Foo的性能和性能,我们比较了零,一和二三种方法。
Publicvoidzero(){//大多数人可能只是这样写
Intsum=0;
For(inti=0;i<mArray.length;++i){
Sum+=mArray.mSplat;
}
}
Publicvoidone(){//提高本地对象的性能
Intsum=0;
Foo[]localArray=mArray;
Intlen=localArray.length;
For(inti=0;i<len;++i){
Sum+=localArray.mSplat;
}
}
Publicvoidtwo(){//推荐方法,可以通过Java1.5的新语法功能大大提高性能
Intsum=0;
For(Fooa:mArray){
Sum+=a.mSplat;
}
}
Zero()是最慢的,因为JIT还不能优化获取数组长度的成本
循环中的每次迭代。one()更快。它把所有东西都拉成局部变量,避免了
查找。只有阵列长度才能提供性能优势。对于没有JIT的设备,two()最快,并且
与具有JIT的设备的one()无法区分。它使用版本中引入的增强型for循环语法
1.5Java编程语言。

未经允许不得转载:IT技术网站 » Android 代码性能优化技巧
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载