目录
1.1、Math.random():随机返回一个[0.0,1.0)之间的double类型的数据
1.2、 Math.random()*10:随机返回一个[0.0,10.0)之间的double类型的数据
1.3、(int)(Math.random()*10):随机返回一个[0,10)之间的int类型的数据
1.4、获取[num1,num2)之间的随机数(num2>num1)
01 随机数Random
1.1、Math.random():随机返回一个[0.0,1.0)之间的double类型的数据
//Math.random()随机返回一个[0.0,1.0)之间的double类型的数据
double num = Math.random();
System.out.println(num);
1.2、 Math.random()*10:随机返回一个[0.0,10.0)之间的double类型的数据
//对上面的代码进行变形,可以获取[0.0,10.0)之间的double类型的数据
double num2 = Math.random()*10;
System.out.println(num2);
1.3、(int)(Math.random()*10):随机返回一个[0,10)之间的int类型的数据
//进一步变形将上面的num2转换为int类型的数据
int num3 = (int)(Math.random()*10);
System.out.println(num3);
1.4、获取[num1,num2)之间的随机数(num2>num1)
int num = (int)(Math.random()*(num2-num1)+num1);
public static void main(String[] args) {
//随机数[0.0,1.0)
int num1 = (int)(Math.random()*10);
//如何获取[29,51)之间的随机整数
//使用51-29=22
int num2 = (int)(Math.random()*22+29);
System.out.println(num2);
//如何获取[num1,num2)之间的随机整数(num2>num1)
//int num = (int)(Math.random()*(num2-num1)+num1);
//随机 获取[38,85)之间的整数
int num3 = (int)(Math.random()*(85-38)+38);
System.out.println(num3);
}
02、随机数random的案例
2.1、案例一
题目:
抽奖规则:会员号的百位数字等于产生的随机数字即为幸运会员
代码;
package com.bdqn.demo00;
import java.util.Scanner;
public class Demo05 {
public static void main(String[] args) {
// 抽奖规则:会员号的百位数字等于产生的随机数字即为幸运会员
// 获取[0,10)之间的随机整数
int random = (int) (Math.random() * 10);
// System.out.println(random); //输出获得得随机整数,方便验证一下答案
// 创建Scanner类对象
Scanner input = new Scanner(System.in);
System.out.print("请输入4位会员号:");
// 从键盘获取数据
int cardId = input.nextInt();
// 获取会员卡号的百位数字
int baiWei = cardId / 100 % 10;
if (baiWei == random) {
System.out.println(cardId + "客户是幸运客户,获精美Mp3一个。");
} else {
System.out.println(cardId + "号客户,谢谢您的支持!");
}
}
}