站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2ME 专题J2ME代码效率测试_for循环和除法

J2ME代码效率测试_for循环和除法

摘要: J2ME代码效率测试_for循环和除法
<tr><td>
http:///tech/article872.html
[转贴于xueyong1203的专栏]

测试环境:
Nokia 3300真机,老40,与7210同一个系列
测试代码:

long time1 = System.currentTimeMillis();
int a = 45456485, b = 0;
for(int i = 100000; --i >= 0;) {
b = a >> 10;
}
tt1 = System.currentTimeMillis() - time1;//307

time1 = System.currentTimeMillis();
for(int i = 100000; --i >= 0;) {
b = a / 1024;
}
tt2 = System.currentTimeMillis() - time1;//584

time1 = System.currentTimeMillis();
for(int i = 0; i < 100000; i++) {
b = a / 1024;
}
tt3 = System.currentTimeMillis() - time1;//647

time1 = System.currentTimeMillis();
for(int i = 0; i < 100000; i++) {
b = a >> 10;
}
tt4 = System.currentTimeMillis() - time1;//354

System.out.println(String.valueOf(b));

结论:
for循环建议写成这样:
for(int i = value; --i >= 0;), 可提高效率15%左右
[] 除法时如果是除以2的N次方
建议写成 >> N, 可提高效率90%左右, 乘法同理
http:///tech/article872.html
</td></tr></table></td> </tr> <tr> <td background="/pic/split.gif" height=1></td> </tr> <tr> <td class="tdMargin1">
↑返回目录
前一篇: 转载-两种将int类型的数据转换成byte数组,以及反向转换的代码
后一篇: 使用J2ME高级用户界面技术开发的猜数字游戏