java精度计算代码 java指定精确小数位
作者:追逐繁星 时间:2023-07-31 03:03:58
本文实例为大家分享了java指定精确小数位的具体代码,供大家参考,具体内容如下
java代码:
public class App2 {
public static void main(String[] args) {
String val = checkNumber("10.1234155", 2, 6).toString();
System.out.println(val);
}
public static BigDecimal checkNumber(String number, int min, int max) {
// 初始化为max位小数
DecimalFormat df = new DecimalFormat(getMaxStr(max));
String num = df.format(Double.parseDouble(number));
BigDecimal bd = new BigDecimal(num);
String val = bd.toString();
val = val.replaceAll("^(0+)", "");
val = val.replaceAll("(0+)$", "");
int idx = val.indexOf(".");
int len = val.substring(idx + 1).length();
if (len < min) {
if (len == 0 && idx == 0) {
bd = new BigDecimal("0.00");
} else {
bd = new BigDecimal(val).setScale(2);
}
} else {
bd = new BigDecimal(val).setScale(len);
}
return bd;
}
public static String getMaxStr(int max) {
String val = "0.";
for (int i = 0; i < max; i++) {
val += "0";
}
return val;
}
}
控制台:
标签:java,精度计算,小数位
0
投稿
猜你喜欢
c# 开发语音识别程序
2022-03-23 04:55:57
Android实现录音方法(仿微信语音、麦克风录音、发送语音、解决5.0以上BUG)
2023-02-27 09:48:51
Java、JavaScript、Oracle、MySQL中实现的MD5加密算法分享
2022-08-24 02:42:11
Android studio 自动换行和取消自动换行操作
2023-08-09 12:16:16
Jmeter如何添加循环控制器
2021-06-26 20:09:52
Win10系统下配置java环境变量的全过程
2023-10-13 12:09:50
Android开发Jetpack组件WorkManager用例详解
2023-05-09 03:27:07
java中动态 代理的实现
2023-11-17 16:16:25
maven多个仓库查询的优先级顺序案例讲解
2023-08-16 02:33:23
Java基础之异常处理详解
2021-07-14 03:03:49
Android 6.0权限请求相关及权限分组方法
2023-11-27 20:08:03
java mybatis如何操作postgresql array数组类型
2023-04-25 22:59:37
利用Android从0到1实现一个流布局控件
2023-01-29 06:38:15
Android sdcard实现图片存储 、联网下载
2023-03-17 22:36:35
c#中文转unicode字符示例分享
2022-05-26 05:07:47
spring boot 全局异常处理方法汇总
2021-07-06 22:44:04
rsa加密算法使用示例分享
2021-08-03 20:47:29
springboot+chatgpt+chatUI Pro开发智能聊天工具的实践
2023-10-30 05:38:03
Java如何在PDF中添加ToolTip工具提示
2021-12-31 12:12:53
Java中的同步与异步详细介绍
2023-06-23 00:42:08