这篇“Java怎么生成指定范围内的一个随机整数”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Java怎么生成指定范围内的一个随机整数”文章吧。
假设我们要生成一个【20,80】的随机数,20可以取到,80也可以取到。
生成【min,max】范围内的随机整数
公式:
(int)( min + Math.random() * ( max - min + 1))
测试案例:生成一个【20,80】的随机整数
public static void main(String[] args) {
for (int i = 1; i <= 80; i++) {
int number = (int) (20 + Math.random() * (80 - 20 + 1));
System.out.println(number);
}
}
可以多打印几次测试结果。
需求:生成 0-10的随机数,包含0和10
Random random = new Random();
int num = random.nextInt(10); //这样写的话,生成[ 0,9]的随机整数数。
如果我们要包含0和10,应该这样写
int num = random.nextInt(10+1);
即是说括号里面的那个最大范围数实际上是取不到的,所以我们要在括号里面+1。
nextInt()生成随机整数规律公式:
需求:生成【min,max】范围内的随机整数,包含min和max
Random random = new Random();
int num = min + random.nextInt( max - min + 1);
参照需求生成【0,10】的随机整数套用公式:
//生成【0,10】的随机整数
Random random = new Random();
int num = 0 + random.nextInt( 10 - 0 + 1);
// int num = random.nextInt(11);
测试案例代码:
public static void main(String[] args){
System.out.println("==========Random对象调用方法产生随机数===========");
int[] arr2 = new int[5];
Random random = new Random();
//产生【1-10】的随机数
for (int i = 0; i < arr2.length; i++) {
arr2[i] = random.nextInt(10 + 1);
System.out.print(arr2[i] + " ");
}
}
随机打印测试的数据(结果有随机性,可以多运行几次观察结果)
系统随机生成【1,100】一个随机数,用户从控制台输入一个数,两者比较大小,若不相等,就提示用户,他输入的数字比系统生成的随机数大还是小。
import java.util.Scanner;
public class Demo18 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int randomNumber = (int) (1 + Math.random() * (100 - 1 + 1));
int userNumber;
while (true) {
System.out.println("请输入您猜测的数字[1,100]:");
userNumber = sc.nextInt();
if (userNumber == randomNumber) {
System.out.println("恭喜您猜对了");
System.out.println("系统生成的随机数:" + randomNumber);
break;
} else if (userNumber > randomNumber) {
System.out.println("您猜的数字偏大");
} else {
System.out.println("您猜的数字偏小");
}
}
System.out.println("游戏结束!");
}
}
以上就是关于“Java怎么生成指定范围内的一个随机整数”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://blog.csdn.net/weixin_40710459/article/details/123931161