6

純粋なJavaでは、通常、小数点以下の桁数をdecimalCount特定の数値に制限するために、以下のような関数を使用しvalueます。ただし、GWT のドキュメントによると、「GWT は、日付および数値の書式設定クラス (java.text.DateFormat、java.text.DecimalFormat、java.text.NumberFormat、および java.TimeFormat など) の完全なエミュレーションを提供していません。」次の関数を GWT で動作させるにはどうすればよいでしょうか?

public static String getFormatted(double value, int decimalCount) { 
    DecimalFormat decimalFormat = new DecimalFormat();
    decimalFormat.setMaximumFractionDigits(decimalCount);
    return decimalFormat.format(value);
}
4

4 に答える 4

9

使用できます

NumberFormat decimalFormat = NumberFormat.getFormat(".##");

たとえば 1234.789789 から 1234.78 にレンダリングする GWT ライブラリから

ここで完全に機能する例を見つけることができます: http://gwt.google.com/samples/Showcase/Showcase.html#!CwNumberFormat

于 2012-10-29T15:08:32.510 に答える
1

UiBinder ファイル内で 10 進形式を指定することもできます

<g:HTMLPanel ui:field="grid">
  <table>
    <tr>
      <td>
        <g:Label>
            <ui:msg description="total">Total:</ui:msg>
        </g:Label>
      </td>
      <td>
        <g:NumberLabel customFormat="0.00" ui:field="total"/>
      </td>
    </tr>
  </table>
</g:HTMLPanel>

于 2016-08-04T12:01:17.683 に答える
1

現在の GWT (2.5、2.6) では、次のようになりました。

private final NumberFormat numberFormat = NumberFormat.getDecimalFormat();

System.out.println(numberFormat.format(myFloat));

編集:リクエストごとにGWTバージョンを追加

于 2014-04-24T18:28:13.270 に答える