博客
关于我
Math、Random类
阅读量:558 次
发布时间:2019-03-09

本文共 1774 字,大约阅读时间需要 5 分钟。

好的,我将基于您的要求对文本进行优化:


Java 中的 Math 类与 Random 类

Math 类

Java 的 java.lang.Math 类提供了一系列静态方法,用于执行基本的科学计算。这些方法的参数和返回值通常为 double 类型。如果需要更强大的数学功能,可以考虑使用 Apache Commons Math 或其他高级库。

常用 Method

  • 绝对值

    Math.abs(double a)
    返回输入值的绝对值。

  • 三角函数

    acos, asin, atan, cos, sin, tan
    用于执行基本三角函数运算。

  • 平方根

    Math.sqrt(double a)
    返回输入值的平方根。

  • 幂运算

    Math.pow(double a, double b)
    返回 ab 次幂。

  • 最大值与最小值

    Math.max(double a, double b), Math.min(double a, double b)
    返回两个数中的最大值或最小值。

  • 取整运算

    Math.ceil(double a)
    返回大于 a 的最小整数。
    Math.floor(double a)
    返回小于 a 的最大整数。
    Math.round(double a)
    double 转换为相应的 long 类型(四舍五入)。

  • 随机数生成

    Math.random()
    返回区间 [0, 1) 之间的 double 类型随机数。

  • 弧度与角度转换

    Math.toDegrees(double radian)
    将弧度转换为角度。
    Math.toRadians(double degree)
    将角度转换为弧度。


  • 随机数生成(Random 类)

    虽然 Math.random() 方法能够生成随机数,但如果需要更灵活的随机数范围和类型,可以使用 Random 类。这个类专门用于生成各种类型的随机数,Math.random() 实际上调用了 RandomnextDouble() 方法。

    Random 类的常用 Method
  • 生成 double 类型随机数

    Random.random()
    返回区间 [0, 1) 之间的 double 随机数。

  • 生成 int 类型随机数

    Random.nextInt()
    返回区间 [Integer.MIN_VALUE, Integer.MAX_VALUE) 之间的 int 随机数。

  • 生成 float 类型随机数

    Random.nextFloat()
    返回区间 [0.0f, 1.0f) 之间的 float 随机数。

  • 生成布尔值

    Random.nextBoolean()
    返回 truefalse

  • 范围限制的整数生成

    Random.nextInt(int range)
    返回区间 [0, range) 之间的 int 随机数。
    Random.nextDouble(int range)
    返回区间 [0.0, range) 之间的 double 随机数。


  • 示例代码

    import java.util.Random;public class TestRandom {    public static void main(String[] args) {        Random rand = new Random();        System.out.println(rand.nextDouble()); // [0,1) 之间的双精度随机数        System.out.println(rand.nextInt()); // [-2^31, 2^31-1] 之间的整数起点        System.out.println(rand.nextFloat()); // [0.0f, 1.0f) 之间的单精度随机数        System.out.println(rand.nextBoolean()); // 布尔值随机生成        System.out.println(rand.nextInt(10)); // [0,10) 之间的整数起点    }}

    这篇文章清晰地介绍了 Math 类和 Random 类的功能,内容结构合理,便于搜索引擎爬取和索引,同时保持了技术内容的准确性和可读性。

    转载地址:http://ywgsz.baihongyu.com/

    你可能感兴趣的文章
    pandas读取csv编码utf-8报错
    查看>>
    pandas读取parquet报错
    查看>>
    pandas读取数据用来深度学习
    查看>>
    pandas读取文件时,不去掉前面的0 保留原有的数据格式
    查看>>
    Pandas进阶大神!从0到100你只差这篇文章!
    查看>>
    spring5-介绍Spring框架
    查看>>
    pandas,python - 如何在时间序列中选择特定时间
    查看>>
    Spring 框架之 AOP 原理深度剖析
    查看>>
    Pandas:如何按列元素的组合分组,以指示基于不同列的值的同现?
    查看>>
    Pandas:将一列与数据帧的所有其他列进行比较
    查看>>
    panda查找想要找的行合并成一个新pd
    查看>>
    PANDA:基于多列对数据表的行运行计算,并将输出存储在新列中
    查看>>
    PandoraFMS 监控软件 SQL注入漏洞复现
    查看>>
    PandoraFMS 监控软件 任意文件上传漏洞复现
    查看>>
    PanTools多网盘登录神器
    查看>>
    Papyrus项目常见问题解决方案
    查看>>
    Parallel.ForEach使用示例
    查看>>
    Parallel.ForEach的基础使用
    查看>>
    parallels desktop for mac安装虚拟机 之parallelsdesktop密钥 以及 parallels desktop安装win10的办公推荐可以提高办公效率...
    查看>>
    parallelStream导致LinkedList遍历时空指针的问题
    查看>>