1

どうすれば変更できますか

Double d = 2.3

Double with value of 2.0

を使用Math.roundしましたが、生成されます2.0

名前を付けて保存する必要がありStringます2.0

4

5 に答える 5

1

使用できますprintf(...)

System.out.printf("Double with value of %.1f", Math.round(d));

または、次を使用して文字列に保存できますString.format(...)

String s = String.format("Double with value of %1f", Math.round(d));
于 2013-02-11T00:36:49.673 に答える
0

数値を使用する文字列に変更する必要がある場合:

String.valueOf(myDouble);

Doubleラッパーを使用して double 値を格納している場合にも、これを使用できます。

myDouble.toString();

したがって、これを Math.round() 呼び出しと組み合わせて使用​​します。

于 2013-02-11T00:39:17.957 に答える
0

@Hunterのおかげで、次のようにしてそれを行うことができました

 String.valueOf(new Double(Math.round(new Double(Double.parseDouble(minorVersion) + 1.0))));
于 2013-02-11T00:43:17.400 に答える
0

最も単純なコード:

String s = "" + myDouble;
于 2013-02-11T00:45:33.863 に答える
0

あなたの質問に対する基本的な答えは使用です

String.valueOf(doubleNo) //in your case doubleNo is 2.0 after rounding

ただし、double を使用するよりも BigDecimal を使用することを検討してください。その場合、次の方法を使用できます。

public String roundAndPrintDouble(double no){
    String numberAsString = String.valueOf(no);
    BigDecimal decimalNo = new BigDecimal(numberAsString);
    BigDecimal roundedDecimal = decimalNo.round(MathContext.DECIMAL128);
    return roundedDecimal.toPlainString();
}

このソリューションを使用する可能性が低い場合は、前にBigDecimalおよびMathContextの JavaDocs を参照してください。

于 2013-02-11T00:59:38.623 に答える