測試環境:
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
Java手機網[www.cnjm.Net] 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%左右, 乘法同理