zoukankan      html  css  js  c++  java
  • Math

    一,Math类

    1,域

    PI和E

    public class Demo01 {
        public static void main(String[] args) {
            System.out.println(Math.E);//自然对数2.718281828459045
            System.out.println(Math.PI);//Π3.141592653589793
        }
    }
    

    2,数学函数

    三角函数,指数函数,取整函数,取最值函数,取平均函数

    三角函数:

    public class Demo02 {
        public static void main(String[] args) {
            //正弦函数sin(Π/2)
            System.out.println("Π/2正弦值:"+Math.sin(Math.PI/2));//Π/2正弦值:1.0
            //余弦函数cos(Π)
            System.out.println("Π/2余弦值:"+Math.cos(Math.PI));//Π余弦值:-1.0
            //120°的弧度值
            System.out.println("120°的弧度值:"+Math.toRadians(120));//2Π/3    120°的弧度值:2.0943951023931953
            //Π/2的角度
            System.out.println("Π/2的角度:"+Math.toDegrees(Math.PI/2));//Π/2的角度:90.0
        }
    }
    

    指数函数:

    public class Demo03 {
        public static void main(String[] args) {
            //e的a次方
            System.out.println("e的平方:"+Math.exp(2));//e的平方:7.38905609893065
            //e为底a的对数
            System.out.println("ln2:"+Math.log(2));//ln2:0.6931471805599453
            //10为底a的对数
            System.out.println("10为底2的对数:"+Math.log10(2));//10为底2的对数:0.3010299956639812
            //a的平方根
            System.out.println("4的平方:"+Math.sqrt(4));//4的平方:2.0
            //a的立方根
            System.out.println("9的立方:"+Math.sqrt(9));//9的立方:3.0
            //a的b次方
            System.out.println("2的三次方:"+Math.pow(2,3));//2的三次方:8.0
        }
    }
    

    取整函数:

    public class Demo04 {
        public static void main(String[] args) {
            //大于某个参数的整数
            System.out.println("大于2.1的整数:"+Math.ceil(2.1));//大于2.1的整数:3.0
            //小于某个参数的整数
            System.out.println("小于2.1的整数:"+Math.floor(2.1));//小于2.1的整数:2.0
            // 接近某个参数的整数
            System.out.println("接近1.1的整数:"+Math.rint(1.1));//接近1.1的整数:1.0
        }
    }
    

    最值和绝对值:

    public class Demo05 {
        public static void main(String[] args) {
            //最值
            System.out.println("4和6较大者:"+Math.max(4,6));//4和6较大者:6
            System.out.println("4和6较小者:"+Math.min(4,6));//4和6较小者:4
            //绝对值
            System.out.println("-5的绝对值:"+Math.abs(-5));//-5的绝对值:5
        }
    }
    

    3,随机数

    public class Demo06 {
    public static void main(String[] args) {
    //默认产生0-1的douoble随机数
    System.out.println("默认产生0-1的douoble随机数:"+Math.random());//默认产生0-1的douoble随机数:0.4942204115967299
    //产生0-2的随机数
    System.out.println("产生0-2的随机数:"+Math.random()*2);//产生0-2的随机数:1.0663961692779989
    //产生3-4的随机数
    System.out.println("产生3-4的随机数:"+(3+Math.random()));//产生3-4的随机数:3.2547938140289996
    //产生5-7的随机数
    System.out.println("产生5-7的随机数:"+(5+Math.random()*2));//产生5-7的随机数:6.779036468953744
    //产生a-z的随机字符
    System.out.println("产生a-z的随机字符:"+(char)('a'+Math.random()*('z'-'a'+1)));//产生a-z的随机字符:m
    //产生A-Z的随机字符
    System.out.println("产生A-Z的随机字符:"+(char)('A'+Math.random()*('Z'-'A'+1)));//产生A-Z的随机字符:F
    }
    }

    4.大小数运算BigDecimal

    加法add

    public class Demo07 {
        public static void main(String[] args) {
            double d1=Math.random();
            double d2=Math.random();
            double d3=d1+d2;
            System.out.println(d1);//0.4357745166939949
            System.out.println(d2);//0.17431581845700095
            System.out.println(d3);//0.6100903351509959
            BigDecimal b1=new BigDecimal(d1);
            BigDecimal b2=new BigDecimal(d2);
            System.out.println(b1);        //0.43577451669399491773759791612974368035793304443359375
            System.out.println(b2);        //0.17431581845700094834938909116317518055438995361328125
            System.out.println(b1.add(b2));//0.61009033515099586608698700729291886091232299804687500
    
    
    
        }
    }
    

      double计算数据有丢失,而BigDecimal就没有

    减法substract,乘法multiply,除法divide (除法涉及商末尾小数点处理,有兴趣再研究) 

     

  • 相关阅读:
    Visual Studio Code 配置C/C++环境
    二叉链的基本操作
    回文自动机
    吊打线段树的超级树状数组
    Treap平衡树
    uni-app nvue页面动态修改导航栏按钮
    uni-app map组件关于marker标记点动态设置的问题
    uni-app 提示 v-for 暂不支持循环数据
    uni-app APP端隐藏导航栏自定义按钮
    uni-app路径规划(打开第三方地图实现)
  • 原文地址:https://www.cnblogs.com/guochengfirst/p/9386453.html
Copyright © 2011-2022 走看看