[英]GWT - convert string to float 2 decimal places
我有一些字符串值需要保留兩個小數位后轉換為float。 我正在使用GWT,所以我嘗試的所有示例都無法在GWT 2.7中使用
String value = "00.00";
String value2 = "-34.90";
String value3 = "3.45";
如何在GWT中將字符串轉換為帶小數點后兩位的浮點數?
GWT是一個框架,您不需要在GWT中而是在Java中將字符串“轉換”為浮點數。
如評論中所述,您不能要求float或double的特定精度。 您也不能相信它們的String
表示形式是它們的實際值...
如果確實只需要兩個小數來表示一個數字,建議您使用一個將值乘以100的int
,然后在所需的任何位置執行簡單的算術運算。 您可以將其包裝在Number
類中:
class TwoDecimal extends Number {
protected int val;
public TwoDecimal(double val) {
this.val = (int)Math.round(100 * val);
}
@Override
public double toDouble() {
return val / 100.0;
}
// Implement other abstract toXXX() methods
@Override
public String toString() {
return (val / 100) + "." + (val % 100);
}
}
還請記住,一個int
可能無法存儲跨度為double
cover的跨度,因此您應使其適應您的用例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.