Java中的Math类、Random类

Java中的Math类、Random类

1.Math类

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

Math 类来自java.long.Math.random()


```java
public class Math_dome1 {
    public static void main(String[] args) {
        System.out.println(Math.abs(-2.0)); //绝对值
        System.out.println(Math.sqrt(64.0));  //立方根
        System.out.println(Math.max(56,78)); //两者之间较大的
        System.out.println(Math.min(56,78)); //两者之间较小的
        System.out.println(Math.random());  //随机数
        System.out.println(Math.pow(2,10));  //幂
        System.out.println(Math.ceil(18.36));  //向上取整
        System.out.println(Math.floor(18.66));  //向下取整
        System.out.println(Math.round(11.5));  //四舍五入
        System.out.println(Math.round(-11.5));  //四舍五入
    }
}

2.Random类

Random类中实现的随机算法是伪随机,也就是有规则的随机。在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要的随机数字。

相同种子数的Random对象,相同次数生成的随机数字是完全相同的。也就是说,两个种子数相同的Random对象,第一次生成的随机数字完全相同,第二次生成的随机数字也完全相同。这点在生成多个随机数字时需要特别注意。

Random类来自java.util.Random();

使用Random类生成随机数

public static void main(String[] args) {
    Random random = new Random();
    for(int i = 0;i<100;i++) {
        int a = random.nextInt(3)+1;
        System.out.print(a);
    }
}

java.util.Random类用法

①、该类的构造方法:

​ Random():构造一个无参的随机数生成器。使用系统时间的毫秒作为默认种子。

​ Random(long seed):使用 long数据类型的种子构造一个随机数生成器。

②方法摘要:

​ boolean nextBoolean():返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 boolean值。

​ double nextDouble():返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.01.0 之间均匀分布的 double 值。

​ float nextFloat():返回下一个伪随机数,它是取自此随机数生成器序列的、在 0.01.0 之间均匀分布的 float 值。

​ int nextInt():返回下一个伪随机数,它是此随机数生成器的序列中均匀分布的 int 值.

​ int nextInt(int n):返回一个伪随机数,它是取自此随机数生成器序列的、在 0(包括)和指定值n(不包括)之间均匀分布的 int 值。

​ long nextLong():返回下一个伪随机数,它是取自此随机数生成器序列的均匀分布的 long 值。

​ void setSeed(long seed):使用单个 long 种子设置此随机数生成器的种子。

​ 注意:如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返回相同的数字序列。

例如:

public class TestRandom{
	public static void main(String[] args){
		int sum=0;		
		java.util.Random random=new java.util.Random();
		for(int i=0;i<10;i++){
            int a=random.nextInt(10);
			System.out.print(a+"  ");
		}
		System.out.println("");
		for(int i=0;i<10;i++){
			int a=random.nextInt();
			System.out.println(a);
		}
		System.out.println("");
		for(int i=0;i<10;i++){
			double a=random.nextDouble();
			System.out.println(a);
		}
		System.out.println("");
		for(int i=0;i<10;i++){
			boolean a=random.nextBoolean();
			System.out.println(a);
		}
		System.out.println("");
	}
}
Java,有两种不同的方式可以生成随机数:使用Mathrandom()方法和使用java.util.Random。 1. Mathrandom()方法: MathJava内置的数学,其有一个静态方法random(),用于生成一个0到1之间的随机浮点数。具体使用方法如下: ```java double randomNum = Math.random(); // 生成一个0到1之间的随机浮点数 ``` 这个方法会返回一个大于等于0且小于1的伪随机浮点数。如果你需要生成其他范围的随机数,可以使用乘法和加法进行缩放和偏移。例如,如果你想生成一个0到100之间的随机整数,可以使用以下代码: ```java int randomInt = (int) (Math.random() * 101); // 生成一个0到100之间的随机整数 ``` 注意:使用Mathrandom()方法生成的随机数是伪随机数,每次程序运行时都会生成相同的随机数序列。如果需要更高质量的随机数,可以考虑使用Random。 2. RandomRandomJava提供的随机数生成器,位于java.util包。使用Random可以生成各种型的随机数,包括整数、浮点数、布尔值等。以下是一个使用Random生成随机整数的示例: ```java import java.util.Random; // 创建Random对象 Random random = new Random(); // 生成一个0到100之间的随机整数 int randomInt = random.nextInt(101); // 打印随机整数 System.out.println(randomInt); ``` Random的nextInt()方法用于生成一个指定范围内的随机整数。在上述示例,nextInt(101)会生成一个0到100之间的随机整数。 总结:Mathrandom()方法适用于简单的随机数生成需求,而Random适用于更复杂的随机数生成需求,可以生成不同型的随机数,并且具有更好的随机性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值