15

私のコードでは、整数に100を掛けたものを小数として使用します(0.1は10など)。出力を10進数で表示するようにフォーマットするのを手伝ってもらえますか?

4

7 に答える 7

29
int x = 100;
DecimalFormat df = new DecimalFormat("#.00"); // Set your desired format here.
System.out.println(df.format(x/100.0));
于 2012-10-20T16:34:07.710 に答える
12

私はフォーマットとして使用すると言い0.00ます:

      int myNumber = 10;
      DecimalFormat format = new DecimalFormat("0.00"); 
      System.out.println(format.format(myNumber));

次のように印刷されます。           

      10.00

ここでの利点は次のとおりです。

あなたが好きなら:

      double myNumber = .1;
      DecimalFormat format = new DecimalFormat("0.00"); 
      System.out.println(format.format(myNumber));

次のように印刷されます。

      0.10
于 2012-10-20T16:38:14.400 に答える
5

整数としてエンコードされた小数を、その係数で除算することにより(doubleとして)印刷できます。

int i = 10; // represents 0.10
System.out.println(i / 100.0);

プリント

0.1

常に小数点以下2桁を表示する必要がある場合は、

System.out.printf("%.2f", i / 100.0);
于 2012-10-20T16:41:17.587 に答える
2

別の答えに基づいて、を使用してBigDecimal、これも機能します:

BigDecimal v = BigDecimal.valueOf(10,2);
System.out.println(v.toString());
System.out.println(v.toPlainString());
System.out.println(String.format("%.2f", v));
System.out.printf("%.2f\n",v);

またはあなたの古き良きものでさえもDecimalFormat動作しますBigDecimal

DecimalFormat df = new DecimalFormat("0.00");
System.out.println(df.format(v));
于 2017-03-15T20:32:02.080 に答える
1

あなたはこれを試すことができます:-

new DecimalFormat("0.00######");

また

NumberFormat f = NumberFormat.getNumberInstance();
f.setMinimumFractionDigits(2);
于 2012-10-20T16:39:26.023 に答える
0

intのdoubleinstateを使用できます。小数の出力が得られます。

数字をドットの後ろに置きたい場合。あなたはこれを使うことができます:

**int number=100;
double result;
result=number/(number.length-1);**

これを使っていただければ幸いです。

于 2012-10-20T18:28:07.947 に答える
0

intのdoubleinstateを使用できます。小数の出力が得られます。そして、100で割ることができます。

于 2012-10-20T18:17:58.913 に答える