我在BlackBerry App中獲取速度值;計量單位BlackBerry location.getSpeed
double velocity = location.getSpeed();
但是,我很困惑什麼是返回速度的度量單位。它是每小時公里還是每秒?這是一個雙重價值。這是否意味着它沒有度量單位?請解釋一下。
我在BlackBerry App中獲取速度值;計量單位BlackBerry location.getSpeed
double velocity = location.getSpeed();
但是,我很困惑什麼是返回速度的度量單位。它是每小時公里還是每秒?這是一個雙重價值。這是否意味着它沒有度量單位?請解釋一下。
輸出值速度將在m/s。 爲了讓你將需要這樣做速度:
int speed = location.getSpeed();
這是米/秒,如果你需要將它轉化成/ h使用公里此:
int speed=(int) ((location.getSpeed()*3600)/1000);
,如果您需要將其轉換爲英里每小時使用:
int speed=(int) (location.getSpeed()*2.2369);
除了Signare的答案:
一般來說,每當一個單位沒有定義/記錄它應該是 基本單位或衍生的單元的International System of Units
由於速度是每時間距離,所導出的SI單位是m/s之一。
如果軟件將使用單位公里/小時或英里稱爲速度和 ,如果沒有文件,這將是一個非常糟糕的軟件部分的公共參數。
此外,爲米/秒轉換爲公里/小時,最好是簡單地mutiply由3.6
- 即比3600/1000
,這是錯誤的原因更可讀,太(可導致一個整數值)
double speedKmh = location.getSpeed() * 3.6;
爲了避免混淆自己,你最好使用名稱而不是speedKmh
速度,如果不是米/秒。
[請參閱javadoc獲取位置#getSpeed(),其中的單位是m/s](http://www.blackberry.com/developers/docs/6.0.0api/javax/microedition/location/Location.html #getSpeed())。另外,'getSpeed()'返回一個浮點數。無論如何,如果這就是所有的精度,最好使用浮點數。 – Nate 2013-04-05 21:18:57