‘壹’ java 取两位小数 不要四舍五入怎么做
以前在远标做过对一个小数点后有多位数的实数,取两位小数而不四舍五入,有两种方案:
乘100再强转成int,再除以100就得到了想要的数
也可以写一个小工具,以便以后重复使用,代码如下:
/**
* a为一个带有未知位小数的实数
* 对其取b位小数
* @param a
* @param b
* @return
*/
static double getDouble(double a,int b){
int x=0;
int y=1;
for(int i=0;i<b;i++){
y=y*10;
}
System.out.println(y);
x=(int)(a*y);
System.out.println("x="+x);
return (double)x/y;
}
‘贰’ java中保留两位小数并要求四舍五入的方法
doubled=2.345;
//格式化为String
Stringstr=String.format("%.2f",d);
System.out.println(str);
//如果需要数字,可以再d=Double.parseDouble(str)
//////////////
BigDecimalbd=newBigDecimal("2.345");//建议使用String参数
BigDecimalbd_half_even=bd.setScale(2,RoundingMode.HALF_EVEN);
BigDecimalbd_half_up=bd.setScale(2,RoundingMode.HALF_UP);
System.out.println(bd_half_even);
System.out.println(bd_half_up);
//HALF_EVEN,HALF_UP是两种不同的四舍五入机制
//BigDecimal默认使用HALF_EVEN
//HALF_UP的效果就是经典的四舍五入
//HALF_EVEN是最科学的四舍五入,但结果和HALF_UP可能会不同
‘叁’ java 取两位小数 不要四舍五入怎么做
对一个小数点后有多位数的实数,取两位小数而不四舍五入,有两种方案:
乘100再强转成int,再除以100就得到了想要的数
也可以写一个小工具,以便以后重复使用,代码如下:
/**
*a为一个带有未知位小数的实数
*对其取b位小数
*@parama
*@paramb
*@return
*/
staticdoublegetDouble(doublea,intb){
intx=0;
inty=1;
for(inti=0;i<b;i++){
y=y*10;
}
System.out.println(y);
x=(int)(a*y);
System.out.println("x="+x);
return(double)x/y;
}
‘肆’ java 将double类型的数 保留两位小数四舍五入 若小数点左边大于三位 千位分隔符
显示成那样格式的,就不是double类型了,而是String类型了。
String.format 可以做到,看看api文档
‘伍’ 如何把java得出的数值,保留小数点2位四舍五入
// 方式一:
double f = 3.1516;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
// 方式二:
new java.text.DecimalFormat("#.00").format(3.1415926);
// #.00 表示两位小数 #.0000四位小数 以此类推…
// 方式三:
double d = 3.1415926;
String result = String.format("%.2f", d);
// %.2f %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型。
//方法四:
Math.round(5.2644555 * 100) * 0.01d;
//String.format("%0" + 15 + "d", 23) 23不足15为就在前面补0
‘陆’ java怎么保留两位小数但不是四舍五入
很简单,先toString(),然后substring(0, 小数点后两位的长度)。
‘柒’ java如何取小数点前两位,并四舍五入
finalclassr{
publicstaticvoidmain(String...args){
System.out.println(Math.round(Float.parseFloat(args[0])));
}
}
‘捌’ java四舍五入 保留两位小数
因为double型小数部分会在从二进制变十进制的类型变换中产生误差,所以x2会变成-3.80000000000003,如果要使输出四舍五入 保留两位小数,可以用String的format函数,方法如下:
System.out.println(String.format("%.2f", x1));
System.out.println(String.format("%.2f", x2));
‘玖’ Java 如何将string中的小数进行四舍五入
java 小数四舍五入
答:import java.math.RoundingMode;import java.text.NumberFormat;public class Snippet {public static void main(String[] args) {double x= 1.9999998;NumberFormat nf = NumberFormat.getInstance();nf.setRoundingMode(RoundingMode.HALF_UP)...
java如何取小数点前两位,并四舍五入
答:取小数点前两位,并四舍五入:double m=7237.3589一、DecimalFormat df = new DecimalFormat("#.00");System.out.println(df.format(m));二、System.out.println(String.format("%.2f", m));
如何把java得出的数值,保留小数点2位四舍五入
答:// 方式一: double f = 3.1516; BigDecimal b = new BigDecimal(f); double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); // 方式二: new java.text.DecimalFormat("#.00").format(3.1415926); // #.00 表示两位小数 #.0000...
java中保留两位小数并要求四舍五入的方法
答:double d=2.345;//格式化为StringString str=String.format("%.2f",d);System.out.println(str);//如果需要数字,可以再d = Double.parseDouble(str)//////////////BigDecimal bd=new BigDecimal("2.345");//建议使用String参数BigDecimal bd_hal...
怎样用java实现小数的四舍五入
答:public static int round(float a) 返回最接近参数的 int。结果将舍入为整数:加上 1/2,对结果调用 floor 并将所得结果强制转换为 int 类型。换句话说,结果等于以下表达式的值: (int)Math.floor(a + 0.5f)