• BigDecimal 和NumberFormat及 获取总页数的应用


    1.

    public class BigDecimalTest {
        public static  void add(double d1,double d2){
            BigDecimal b1 = new BigDecimal(d1);
            BigDecimal b2 = new BigDecimal(d2);
            double result = b1.add(b2).doubleValue();
            int result2 = b1.add(b2).intValue();
            System.out.println(result);
        }
    
        public static  void sub(double d1, double d2){
            BigDecimal b1 = new BigDecimal(d1);
            BigDecimal b2 = new BigDecimal(d2);
            double result = b1.subtract(b2).doubleValue();//7.2219999999999995
            System.out.println(result);
        }
    
        public static void multiply (double d1, double d2){
            BigDecimal b1 = new BigDecimal(d1);
            BigDecimal b2 = new BigDecimal(d2);
            double result = b1.multiply(b2).doubleValue();
            System.out.println(result);
        }
    
        public static void divide (double d1, double d2,int len){
            BigDecimal b1 = new BigDecimal(d1);
            BigDecimal b2 = new BigDecimal(d2);
            double result = b1.divide(b2,len,BigDecimal.ROUND_HALF_UP).doubleValue();//BigDecimal.ROUND_HALF_UP 四舍五入
            System.out.println(result);
        }
    
        private  static  void getTotalPages(double d1,double d2){
            BigDecimal b1 = new BigDecimal(d1);
            BigDecimal b2 = new BigDecimal(d2);
            int totalPage = b1.divide(b2,0,BigDecimal.ROUND_UP).intValue();//小数点后保留0位, 小数点位置非0加一
            System.out.println(totalPage);
        }
    
        public static void main(String[] args) {
            add(10.333,3.111);//13.444
            sub(10.333,3.111);//7.2219999999999995
            multiply(10.333,3.111);//32.145963
            divide(10.0,3.0,1);//3.3
            divide(10.0,3.0,2);//3.33, len代表小数点后面几位 BigDecimal.ROUND_HALF_UP
            divide(10.0,3.0,3);//3.333, len代表小数点后面几位
            divide(10.0,3.0,4);//3.3333
            getTotalPages(100,30);//总记录是100跳每页要有30条记录,总共多少页? 4页!
        }
    }
    
        public int getTotalPage() {
            if(perpage>0){
                BigDecimal b1 = new BigDecimal(totalCount);
                BigDecimal b2 = new BigDecimal(perpage);
                totalPage = b1.divide(b2,0,BigDecimal.ROUND_UP).intValue();
                return totalPage;
            }else{
                return 0;
            }
        }
    

     2. Bigdecimal 与 NumberFormat

    public class NumberFormatDemo {
    
        public static void main(String[] args) {
            NumberFormat currency = NumberFormat.getCurrencyInstance();
            NumberFormat percent = NumberFormat.getPercentInstance();
            
            percent.setMinimumFractionDigits(2);//百分比后三位
    
            BigDecimal loanAmout = new BigDecimal("15000.8");
            BigDecimal interestRate = new BigDecimal("0.008");
            BigDecimal interest = loanAmout.multiply(interestRate);
    
            System.out.println("贷款金额:	"+ currency.format(loanAmout));
            System.out.println("利率:	"+percent.format(interestRate));
            System.out.println("利息:	"+currency.format(interest));
        }
                /*
                    贷款金额:	¥15,000.80
                    利率:	0.80%
                    利息:	¥120.01
                */
    }
    
  • 相关阅读:
    RabbitMq学习4-发布/订阅(Publish/Subscribe)
    RabbitMq学习3-工作队列(Work queues)
    《大型网站技术架构》-读书笔记七:安全架构
    RabbitMq学习2-php命令行模式测试rabbitmq
    《大型网站技术架构》-读书笔记六:可扩展架构
    RabbitMq学习1-介绍、安装和配置
    《大型网站技术架构》-读书笔记五:伸缩性架构
    C#构建树形数据结构
    数据结构和算法(一)概念
    C# 简介
  • 原文地址:https://www.cnblogs.com/bravolove/p/5867515.html
Copyright © 2020-2023  润新知