java 两个Double类型的数值之间的加减操作
来源:互联网 发布:网络作家收入排行 编辑:程序博客网 时间:2024/05/07 20:08
DoubleUtilsimport java.math.BigDecimal;public class DoubleUtil { /** * double 相加 * @param d1 * @param d2 * @return */ public static double sum(double d1,double d2){ BigDecimal bd1 = new BigDecimal(Double.toString(d1)); BigDecimal bd2 = new BigDecimal(Double.toString(d2)); return bd1.add(bd2).doubleValue(); } /** * double 相减 * @param d1 * @param d2 * @return */ public static double sub(double d1,double d2){ BigDecimal bd1 = new BigDecimal(Double.toString(d1)); BigDecimal bd2 = new BigDecimal(Double.toString(d2)); return bd1.subtract(bd2).doubleValue(); } /** * double 乘法 * @param d1 * @param d2 * @return */ public static double mul(double d1,double d2){ BigDecimal bd1 = new BigDecimal(Double.toString(d1)); BigDecimal bd2 = new BigDecimal(Double.toString(d2)); return bd1.multiply(bd2).doubleValue(); } /** * double 除法 * @param d1 * @param d2 * @param scale 四舍五入 小数点位数 * @return */ public static double div(double d1,double d2,int scale){ // 当然在此之前,你要判断分母是否为0, // 为0你可以根据实际需求做相应的处理 BigDecimal bd1 = new BigDecimal(Double.toString(d1)); BigDecimal bd2 = new BigDecimal(Double.toString(d2)); return bd1.divide(bd2,scale,BigDecimal.ROUND_HALF_UP).doubleValue(); } /** * double 转 string 去掉后面锝0 * @param i * @return */ public static String getString(double i){ String s = String.valueOf(i); if(s.indexOf(".") > 0){ //正则表达 s = s.replaceAll("0+?$", "");//去掉后面无用的零 s = s.replaceAll("[.]$", "");//如小数点后面全是零则去掉小数点 } return s; } public static void main(String[] args) { String i=numberToBits("10000000.01"); System.out.println(i); } /** * 数字转换为千位符 * @param number * @return */ public static String numberToBits(String number){ String begin=""; String end=""; String[] num=number.split("\\."); if(num.length>1){ begin=num[0]; end=num[1]; }else{ begin=number; } return begin.replaceAll("(?<=\\d)(?=(?:\\d{3})+$)", ",")+"."+end; }}
阅读全文
0 0
- java 两个Double类型的数值之间的加减操作
- java中,数值计算时的类型转换 ( 两个int类型相加,赋值给double )
- [Java 数值] 数值类型之间的转换
- Java中数值类型之间的转换
- java-数值类型之间的转换
- Java中数值类型之间的转换
- JAVA double类型数值,通过NumberFormat类取值的尝试
- Java 百分数转换成double类型的数值
- java double类型加减运算时出现的精度丢失问题
- java对Date类型时间的直接加减操作
- 解决java中两个double类型的值相加
- java中比较两个double类型的数据大小
- java中两个double类型数据的大小
- java数值类型与二进制byte数组之间的转换
- java数值类型与二进制byte数组之间的转换
- java中Double数值的计算
- 两个窗体之间数值的传送!
- 两个servlet之间数值的传递
- UML实践详细经典教程
- FPGA IN 消费电子
- Java面试题集(86-115)
- windows环境下Anaconda安装Tensorflow
- 详细介绍springData
- java 两个Double类型的数值之间的加减操作
- 12 个 Linux 进程管理命令介绍
- 嵌入式 使用udev高效、动态地管理Linux 设备文件
- java访问URL
- 单播,组播,多播
- 编写一个程序,把text1.txt中的单词与text2.txt中的单词交互保存到text3.txt中
- 登陆页面实现保存帐号密码功能
- Spring Boot 2.0
- 学习笔记之面向对象编程20(处理流、缓冲流、转换流)