2012-05-17 60 views
5

我在客戶端(javascript)中使用toFixed(2)。但在服務器端(Java)我必須重新計算。我怎樣才能做到這一點?Javascript to fixed fixed in java

+0

'String data =「10223455.3415」; BigDecimal decimal = new BigDecimal(data);的System.out.println(decimal.setScale(2,BigDecimal.ROUND_HALF_UP).toPlainString());」正在爲我工​​作 – jayanth

+0

也許這行代碼可以幫助你'System.out.println(String.format(Locale.ENGLISH,「%.2f」,1.23456));' –

回答

7

BigDecimalsetScale()會爲你做它在服務器端

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

Jigar any example pls – jayanth

+0

added example

+0

1000000023.1253456F如果我給它這給它的問題 – jayanth

3

DecimalFormatformat方法是在java中相當於toFixed在JavaScript。

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 但在js中,它給1234568.24 – jayanth