您好,登录后才能下订单哦!
这篇“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怎么生成指定范围内的一个随机整数”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。