第一種方式:這兩種將毫秒轉換爲秒的方式有什麼區別?
long mySeconds = milliseconds/ 1000;
方式二:
double mySeconds = milliseconds * 1e-3d;
此計算最終用於確定陣列的索引,例如:
int index = (int) ((someDoubleSeconds + mySeconds)/ someDouble);
什麼差異將兩種方法使?
還有第一種方法rounds to the next second
或截斷like floor function
?
將double轉換爲int的規則是一個複雜的頭髮 - 我隱約記得可以有四捨五入。 (但請注意,它的問題確實與'(int)'投射命中了,而不是之前。) –
但是第一個分割將截斷小數秒,而不是圓。 –
@HotLicks將double轉換爲int只會簡化小數部分。 – arshajii