目录
- 工具类-java精确到小数点后6位
- 有了下面解决方法
- java除法运算问题(保留小数)
工具类-java精确到小数点后6位
验证要求,必须精确到小数点后6位,但是后面都是0的话,double会省略0,正则验证不通过,所以
有了下面解决方法
精确到小数点后六位,若最后一位是0则用1代替。
private double getSixScale(String s) {
//先精确到后6位,并转为字符串
String sixScaleString = new BigDecimal(s).setScale(6, BigDecimal.ROUND_HALF_UP).toString();
//若字符串最后一位是0,则用1代替
if ("0".equals(sixScaleString.substring(sixScaleString.length() - 1))) {
sixScaleString = sixScaleString.substring(0, sixScaleString.length() - 1) + "1";
}
//再转为double
return new BigDecimal(sixScaleString).doubleValue();
}
java除法运算问题(保留小数)
编程的人都知道,java中的“/”、“%”运算,其中前者为取整,后者取余数。
那么有没有快捷的运算方法取正常的运算结果呢?
查了资料,发现很简单。
代码如下:
/**
* TODO 除法运算,保留小数
* @author 袁忠明
* @date 2018-4-17下午2:24:48
* @param a 被除数
* @param b 除数
* @return 商
*/
public static String txfloat(int a,int b) {
// TODO 自动生成的方法存根
DecimalFormat df=new DecimalFormat("0.00");//设置保留位数
return df.format((float)a/b);
}
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)