Math类和Random类(数学公式相关类)

时间:2023-03-08 16:42:08

Math 类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。

常用方法:

1、static 数值类型 abs(数值类型 a) 
     返回 double 值的绝对值。

2、static double ceil(double a) 
     返回最小的(最接近负无穷大)double 值,该值大于等于参数,并等于某个整数。 也叫向上取值

3、static double floor(double a) 
    返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。也叫向下取值

4、static 数值类型 round (数值类型 a) 
     返回最接近参数的数值。也叫四舍五入

5、static double random() 
     返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。也叫随机数函数。

Random 类:

此类的实例用于生成伪随机数流。如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。为了保证此属性的实现,为类 Random 指定了特定的算法。为了 Java 代码的完全可移植性,Java 实现必须让类 Random 使用此处所示的所有算法。但是允许 Random 类的子类使用其他算法,只要其符合所有方法的常规协定即可。

常用方法:

1、Random() 
     创建一个新的随机数生成器。

2、数值类型 next数值类型 (int bits) 
     生成下一个伪随机数。

代码示例:

 import java.util.Random;

 public class MathTest {
public static void main(String[] args) {
System.out.println("绝对值:"+Math.abs(-3));
System.out.println("向上取整:"+Math.ceil(3.14));
System.out.println("向下取整:"+Math.floor(-3.14));
System.out.println("四舍五入:"+Math.round(3.54));
System.out.println("随机数:"+Math.random());
//Random类产生特定范围的随机数
Random random1 = new Random(1);
Random random2 = new Random(1);
int randomNum = random1.nextInt(10)+1; //产生 的 随机数就是0-10之间
int randomNum2 = random2.nextInt(10)+1; //产生 的 随机数就是0-10之间
System.out.println("随机数:"+ randomNum+" 随机数2:"+ randomNum2);
//需求: 编写一个函数随机产生四位的验证码。
char[] arr = {'我','是','沈','a','阳','f','B'};
StringBuilder sb = new StringBuilder();
Random random = new Random();
//需要四个随机数,通过随机数获取字符数组中的字符,
for(int i = 0 ; i< 4 ; i++){
int index = random.nextInt(arr.length); //产生的 随机数必须是数组的索引值范围之内的。
sb.append(arr[index]);
}
System.out.println("验证码:"+ sb);
}
}