Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java中的Javascript toFixed等价物_Java_Javascript - Fatal编程技术网

java中的Javascript toFixed等价物

java中的Javascript toFixed等价物,java,javascript,Java,Javascript,我正在客户端(javascript)中使用toFixed(2)。但是在服务器端(java),我必须重新计算。我如何才能做到这一点?的将在服务器端为您做到这一点 import java.math.BigDecimal; public class Main{ public static void main(String ar[]){ float number = 123.123456F; BigDecimal numberBigDecimal = new BigDecimal(number

我正在客户端(javascript)中使用toFixed(2)。但是在服务器端(java),我必须重新计算。我如何才能做到这一点?

的将在服务器端为您做到这一点

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);
}
}
的方法在java中与在javascript中的toFixed等效

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

你所说的浮动数据=1234568.236f是什么意思?DecimalFormat DecimalFormat=新的DecimalFormat(“0.###”);System.out.println(decimalFormat.format(数据));=1234568.25但在js中它给出了1234568.24
String data=“10223455.3415”;BigDecimal decimal=新的BigDecimal(数据);System.out.println(decimal.setScale(2,BigDecimal.ROUND_HALF_UP).toPlainString())大小数,设置刻度是正确的方法。参见Jigar Joshi的@FernandoTorres请详细说明100000023.1253456F如果我给出了这一点,它给出了问题,我为问题添加了一条评论,这很好。感谢@Joshiseems超出了float的范围,它运行良好。我认为这不会给出准确的结果,例如在javascript数字(1.345)中。toFixed(2)将给出1.34,而在java新的BigDecimal(1.345)。setScale(2,BigDecimal.ROUND_-UP)将给出1。35@Sayantan这太荒谬了。是否有解决方案?'String data=“10223455.3415”;BigDecimal decimal=新的BigDecimal(数据);System.out.println(decimal.setScale(2,BigDecimal.ROUND\u HALF\u UP).toPlainString())‌​;' 这行代码可以帮助您
System.out.println(String.format(Locale.ENGLISH,“%.2f”,1.23456))