A. java里面输出一个double型数据,怎么精确到小数点后6位
new BigDecimal(resultDouble).setScale(6, BigDecimal.ROUND_HALF_UP).doubleValue();
可以通过BigDecimal类的setScale()函数格式化小数,参数解释找api文档看看就清楚了
B. 在JAVA中把double类型转换成long类型,丢失数据位是什么,为什么
double是浮点型,long是整数型,以上语句转换时小数部分没有了,这就是丢失。javadouble转long型是取整运算,用Double封装下基本类型double,再调用longValue方法。Double(doublevalue)
longlongValue(),将此Double值作为long类型返回(通过强制转换为long类型),详细步骤:
1、首先在visualstudio中用c#语言进行类型转换,新建项目命名"longdouble",项目结构图如下。
C. java数字格式化
用 %3.2f格式化后, 替换逗号即可;
同理, 用 #,##0.00 格式化后, 替换, 为空格即可.
你的需求:
doublex=1234.5;
DecimalFormatdf=newDecimalFormat("#,###.0");
Stringxs=df.format(x);
xs=xs.replace(",","").replace(".",",");
System.out.println(xs);
输出
1234,5
D. java怎么设置double怎么设置保留两位小数
最简单直接的方法:
double d = 114.145;
d = (double) Math.round(d * 100) / 100;