java中是怎么对double类型进行取余 javadouble double取余 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 float和double都有这问题要精确的话最好用Bigdecimal System.out.println(new BigDecimal(15.2%5).floatValue()); 挺好用 System.out.println(new BigDecimal(15.2%5).floatValue()); 挺好用转换成float是变成了0.2,它这样处理数据的原理是什么?求解!! double 和 float两个类型在java中本身就是非精确存储的,再用两个近似值去做计算,得到的结果就只能是一个近似值了。 //使用BigDecimal四舍五入保留2位小数 double val = 15.2 % 5; BigDecimal bd = new BigDecimal(val); val = bd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); System.out.println(val);//打印0.2 两个数有一个是double,结果就是double的。四舍五入网上太多了,不再赘述。看一下:java.math 类 BigDecimaljava.lang.Object 继承者 java.lang.Number 继承者 java.math.BigDecimal 如何判断多个区间数否存在相同的数字? 请问对象的多维数组如何建立? 学习JAVA 关于2D RPG游戏的地图处理 vector问题求教 在哪里把网页风格改成老版本的风格? 关于java中表格控件的排序问题 在jbuilder 里面能够获取数据库数据,导成.exe文件后就不能获取了,怎么回事啊?? JAVA如何使用各种端口 在哪里能下载到这种东西啊? 检查一个线程run方法的执行时间,这样写是否可行? 请问我该怎么走我的'主线'和'支线'?
要精确的话最好用Bigdecimal
挺好用
挺好用
转换成float是变成了0.2,它这样处理数据的原理是什么?求解!!
double val = 15.2 % 5;
BigDecimal bd = new BigDecimal(val);
val = bd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println(val);//打印0.2
四舍五入网上太多了,不再赘述。看一下:
java.math
类 BigDecimaljava.lang.Object
继承者 java.lang.Number
继承者 java.math.BigDecimal