java中Math类和Random类的api

目录

Math 类

1)abs(x)

2)ceil(x)

3)floor(x)

4)round(x)

5)max(x, y)

6)min(x, y)

7)sqrt(x)

8)pow(x, y)

9)random()

10)sin(x), cos(x), tan(x)

11)toDegrees(x), toRadians(x)

12.案例:Math类的简单使用

1.代码

2.效果

Random 类

1)构造方法

Random()

Random(long seed)

2)nextInt()

3)nextInt(int bound)

4)nextDouble()

5)nextBoolean()

6)nextFloat()

7)nextLong()

8)nextGaussian()

9.案例:使用Random编写一个简单的工具类

1.代码

2.测试类

3.效果

 


Math 类

Math 类提供了执行基本数学运算的方法,如三角函数、对数、指数、取整等。下面是 Math 类中一些常用的 API 及其参数解析:

  1. 1)abs(x)

    • 返回参数的绝对值。
    • 参数:x - 一个数值(可以是 intlongfloatdouble)。
    • 示例:
      int absInt = Math.abs(-5); // 5
      double absDouble = Math.abs(-3.14); // 3.14
  2. 2)ceil(x)

    • 返回大于或等于参数的最小整数。
    • 参数:x - 一个 double 值。
    • 示例:
      double ceilValue = Math.ceil(3.14); // 4.0
  3. 3)floor(x)

    • 返回小于或等于参数的最大整数。
    • 参数:x - 一个 double 值。
    • 示例:
      double floorValue = Math.floor(3.14); // 3.0
  4. 4)round(x)

    • 返回最接近参数的 long 或 int 值。
    • 参数:x - 一个 float 或 double 值。
    • 示例:
      long roundLong = Math.round(3.14); // 3
      int roundInt = Math.round(3.6f); // 4
  5. 5)max(x, y)

    • 返回两个参数中的较大值。
    • 参数:xy - 两个数值(可以是 intlongfloatdouble)。
    • 示例:
      int maxInt = Math.max(5, 10); // 10
      double maxDouble = Math.max(3.14, 2.71); // 3.14
  6. 6)min(x, y)

    • 返回两个参数中的较小值。
    • 参数:xy - 两个数值(可以是 intlongfloatdouble)。
    • 示例:
      int minInt = Math.min(5, 10); // 5
      double minDouble = Math.min(3.14, 2.71); // 2.71
  7. 7)sqrt(x)

    • 返回参数的平方根。
    • 参数:x - 一个 double 值。
    • 示例:
      double sqrtValue = Math.sqrt(16.0); // 4.0
  8. 8)pow(x, y)

    • 返回 x 的 y 次幂。
    • 参数:x - 底数,y - 指数,都是 double 值。
    • 示例:
      double powValue = Math.pow(2.0, 3.0); // 8.0
  9. 9)random()

    • 返回一个介于 0.0 和 1.0 之间的伪随机数。
    • 参数:无
    • 示例:
      double randomValue = Math.random(); // 例如 0.34567
  10. 10)sin(x), cos(x), tan(x)

    • 分别返回参数的正弦、余弦和正切值。
    • 参数:x - 一个 double 值,表示弧度。
    • 示例:
      double sinValue = Math.sin(Math.PI / 2); // 1.0
      double cosValue = Math.cos(0.0); // 1.0
      double tanValue = Math.tan(Math.PI / 4); // 1.0
  11. 11)toDegrees(x), toRadians(x)

    • 将弧度转换为角度或将角度转换为弧度。
    • 参数:x - 一个 double 值。
    • 示例:
      double degrees = Math.toDegrees(Math.PI); // 180.0
      double radians = Math.toRadians(180.0); // π (约 3.14159)

12.案例:Math类的简单使用

1.代码

package org.xiji.system;

public class MathEasyUse {
    public static void main(String[] args)
    {
        System.out.println("Math的abs使用");
        System.out.println(Math.abs(-10));
        System.out.println(Math.abs(10));
        System.out.println("Math的random使用");
        for (int i = 0; i < 10; i++)
        {
            System.out.println(Math.random());
        }
        System.out.println("Math的sqrt使用");
        System.out.println(Math.sqrt(9));
        System.out.println(Math.sqrt(16));
        
        
        System.out.println("Math的ceil使用");
        System.out.println(Math.ceil(3.14));
        System.out.println(Math.ceil(3.9));
        
        
        System.out.println("Math的floor使用");
        System.out.println(Math.floor(3.14));
        System.out.println(Math.floor(3.9));
        
        
        System.out.println("Math的round使用");
        System.out.println(Math.round(3.14));
        System.out.println(Math.round(3.9));
        
        
        System.out.println("Math的min使用");
        System.out.println(Math.min(3, 5));
        System.out.println(Math.min(3.14, 5.14));
        
        
        System.out.println("Math的max使用");
        System.out.println(Math.max(3, 5));
        System.out.println(Math.max(3.14, 5.14));
        
        
        System.out.println("Math的pow使用");
        System.out.println(Math.pow(2, 3));
        System.out.println(Math.pow(2.5, 3));
        
        
        System.out.println("Math的sin使用");
        System.out.println(Math.sin(Math.PI / 2));
        System.out.println(Math.sin(Math.PI / 6));
        
        
        System.out.println("Math的cos使用");
        System.out.println(Math.cos(Math.PI / 2));
        System.out.println(Math.cos(Math.PI / 6));
        
        
        System.out.println("Math的tan使用");
        System.out.println(Math.tan(Math.PI / 2));
        System.out.println(Math.tan(Math.PI / 6));
        

    }
}

2.效果

Random 类

Random 类用于生成伪随机数。下面是一些常用的 Random 类 API 及其参数解析:

  1. 1)构造方法

    • Random()

      • 创建一个新的随机数生成器。
      • 示例:
        Random random = new Random();
    • Random(long seed)

      • 使用指定的种子创建一个新的随机数生成器。
      • 参数:seed - 一个 long 值,用作随机数生成器的初始种子。
      • 示例:
        Random random = new Random(12345L);
  2. 2)nextInt()

    • 返回下一个伪随机数,范围在 int 的范围内(即从 -2^31 到 2^31 - 1)。
    • 参数:无
    • 示例:
      int randomInt = random.nextInt(); // 例如 -123456789
  3. 3)nextInt(int bound)

    • 返回一个介于 0(包括)和 bound(不包括)之间的伪随机数。
    • 参数:bound - 上界(不包括),必须为正数。
    • 示例:
      int randomInt = random.nextInt(100); // 例如 42
  4. 4)nextDouble()

    • 返回一个介于 0.0(包括)和 1.0(不包括)之间的伪随机 double 值。
    • 参数:无
    • 示例:
      double randomDouble = random.nextDouble(); // 例如 0.34567
  5. 5)nextBoolean()

    • 返回下一个伪随机布尔值。
    • 参数:无
    • 示例:
      boolean randomBoolean = random.nextBoolean(); // 例如 true
  6. 6)nextFloat()

    • 返回一个介于 0.0(包括)和 1.0(不包括)之间的伪随机 float 值。
    • 参数:无
    • 示例:
      float randomFloat = random.nextFloat(); // 例如 0.12345
  7. 7)nextLong()

    • 返回下一个伪随机 long 值。
    • 参数:无
    • 示例:
      long randomLong = random.nextLong(); // 例如 1234567890123456789L
  8. 8)nextGaussian()

    • 返回下一个伪随机高斯(正态)分布的 double 值,均值为 0.0,标准差为 1.0。
    • 参数:无
    • 示例:
      double gaussianValue = random.nextGaussian(); // 例如 0.567

9.案例:使用Random编写一个简单的工具类

1.代码

package org.xiji.system.util;

import java.util.Random;

public class MyRandomUtil {

    //定义一个Random类
    public static Random random = new Random();

    //生成一个整数型的随机数
    public static int getRandomInt(int min, int max){
        return random.nextInt(max - min + 1) + min;
    }

    //生成一个浮点数的随机数
    public static double getRandomDouble(double min, double max){
        return random.nextDouble() * (max - min) + min;
    }

    //生成一个字符型的随机数
    public static char getRandomChar(){
        return (char) (random.nextInt(26) + 'a');
    }

    //生成一个long类型
    public static long getRandomLong(long min, long max){
        return random.nextLong() % (max - min + 1) + min;
    }

}

2.测试类

package org.xiji.system.util;

public class TestMyRandomUtil {
    public static void main(String[] args)
    {
        System.out.println("四字节整数型测试");
        System.out.println(MyRandomUtil.getRandomInt(1, 100));

        System.out.println("双精度浮点型测试");
        System.out.println(MyRandomUtil.getRandomDouble(1, 100));

        System.out.println("长整型测试");
        System.out.println(MyRandomUtil.getRandomLong(1, 100));

        System.out.println("字符型测试");
        System.out.println(MyRandomUtil.getRandomChar());

    }
}

3.效果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值