2012-05-17 24 views
5

私はクライアント側(javascript)でtoFixed(2)を使用しています。しかし、サーバー側(java)で私は再計算する必要があります。これどうやってするの? BigDecimalJavascript toFixed相当のJavaで

+0

'String data = "10223455.3415"; BigDecimal decimal =新しいBigDecimal(データ); System.out.println(decimal.setScale(2、BigDecimal.ROUND_HALF_UP).toPlainString()); '私のために働いています – jayanth

+0

コード行が 'System.out.println(String.format(Locale.ENGLISH、"%.2f "、1.23456));' –

答えて

7

setScale()

import java.math.BigDecimal; 


public class Main{ 

public static void main(String ar[]){ 
float number = 123.123456F; 
BigDecimal numberBigDecimal = new BigDecimal(number); 
System.out.println(numberBigDecimal); 
numberBigDecimal = numberBigDecimal .setScale(2, BigDecimal.ROUND_HALF_UP); 
System.out.println(numberBigDecimal); 
} 
} 
+0

任意の例pls – jayanth

+0

の例を追加しました

+0

1000000023.1253456Fもし私がこの問題を与えることを与えた場合 – jayanth

3

DecimalFormatformat方法はJavaScriptでtoFixedにJavaで同等のサーバー側であなたのためにそれを行います。

DecimalFormat decimalFormat = new DecimalFormat("0.##"); 
System.out.println(decimalFormat.format(3.1000565)); 
+0

float data = 1234568.236f; – jayanth

+0

「float data = 1234568.236f;」とはどういう意味ですか? – henryabra

+0

DecimalFormat decimalFormat = new DecimalFormat( "0。##"); System.out.println(decimalFormat.format(data)); = 1234568.25 しかし、それは与えている1234568.24 – jayanth