• Java—Math类和随机数类


    一、Math类(主要封装算数运算的静态方法

    定义:

     

    Math是没有构造方法的.

    java语言中提供了一个执行数学基本运算的Math类,Math类包括常用的数学运算和一些数学函数。还提供了一些常用的常量,PI, E等。

    Math类中提供了许多数学函数算法,这些函数都被定义为static形式

    调用起来也方便:

    Math.数学方法

    Math.PI

    Math.E

    常用的数学运算方法

    1.三角函数

    正弦:public static double sin(double a);

    余弦:public static double cos(double a);

    正切:public static double tan(double a);

    反正弦:public static double asin(double a);

    反余弦:public static double acos(double a);

    反正切:public static double atan(double a);

    角度转弧度:public static double toRadians(double angdeg);

    弧度转角度:public static double toDegrees(double angdeg);

    简单示例几个:

    Math.max():较大数

    Math.min():较小数

    Math.ceil():不小于最小的数

    Math.floor():不大于最大的数

    Math.round():四舍五入

    二、随机数

    Math.random()

    默认生成0.0~1.0的double型随机数。

    Math类的random()方法也可以随机生成随机字符
    (char)('a'+Math.random()*('z'-'a'+1));      (a~z)

    (char)(char1+Math.random()*(char2-char1+1));  (A~Z)

    Random类(主要用于产生随机数)

    除了Math类的random()方法可以获取随机数之外,Random类也可以获取随机数。

    Random r=new Random();

    Random r=new Random(seedValue);
     r:Random对象。

    seedValue:随机数生成器的种子。

    常用的方法:

    public int nextInt():返回一个随机整数

    public int nextInt(int n):返回大于0小于n的随机整数。

    public long nextLong():返回一个随机长整型

    public boolean nextBoolean():返回一个随机布尔型值

    public float nextFloat():返回一个随机浮点型值

    public double nextDouble():返回一个随机双精度型值

    public double nextGaussian():返回一个概率密度为高斯分布的双精度值

    练习:

     1 public static void main(String[] args) {
     2         //1、试随机产生一个4位数
     3         //返回指定位数的随机数的公式:(int)(Math.random) * (最大数—最小数) +最小数
     4         int num = (int)(Math.random() * (9999-1000) + 1000);
     5         System.out.println(num);//输出随机四位整数
     6         //2、返回不大于546.2134的最大整数
     7         int num1 = (int) Math.floor(546.2134);
     8         System.out.println(num1);//546
     9         //3、返回大于123.1123的最小整数
    10         int num2 = (int)Math.ceil(123.1123);
    11         System.out.println(num2);//124
    12         //4、从“a,b,c,d…z,A,B,C,….,Z”随机取4个字母在控制台上显示
    13         String s = "QWERTYUIOPASDFGHJKLZXCVBNMzxcvbnmasdfghjklqwertyuiop";
    14         char[] c = s.toCharArray();
    15         Random random = new Random();
    16         for(int i=1 ;i<5;i++) {
    17             System.out.print(c[random.nextInt(c.length)]);//随机生成四位字母
    18         }
    19     }

    三、大数值

    大数值有两种类型的BigInteger和BigDecimal

    BigInteger:int,long无法表示的大整数

    BigDecimal:float,double无法表示的大浮点数

  • 相关阅读:
    单片机I/O口推挽与开漏输出详解(力荐)
    wifi
    SDIO总线协议
    [hi3521] nand flash 的 boot 启动模式的区别?
    常见SOC启动流程分析
    PWM通过RC低通滤波器模拟DAC
    海思 core 电压动态调整
    USB线上/串口/I2C引脚串联电阻的作用
    几种flash存储芯片的用途和分类
    示波器分析I2C时序波形图
  • 原文地址:https://www.cnblogs.com/xss512/p/10520419.html
Copyright © 2020-2023  润新知