Random类(java.util.Random生成随机数)--常用类
java.util.Random
生成随机数
Random random = new Random(); System.out.println(random.nextInt());//生成int范围内的随机正负整数 System.out.println(random.nextInt(10));//生成[0,10)之间的随机整数
例子1.要求传递一个int参数n,生成[1,n]的随机数
package commonclass; import java.util.Random; public class TestRandom { public static void main(String[] args) { test1(10); } //要求传递一个int参数n,生成[1,n]的随机数(random.nextInt(9)生成的随机数范围为[0,9)) //可以先随机一个范围随机数[0,n),再加1,为[1,n+1),这样也可变为[1,n] public static void test1(int n){ Random random = new Random(); System.out.println(random.nextInt(n)+1); } }
例子2.猜数字游戏
package commonclass; import java.util.Random; import java.util.Scanner; //模拟参数字的小游戏 /*1.生成一个随机数[0,100)之间的随机数 * 2.提示用户输入,获取在控制台输入的数 * 3.将生成的随机数与控制台得到的数比较 * 4.返回比较信息,相等,猜对了,不相等,返回猜打了或猜小了,返回2*/ public class TestRandom02 { public static void main(String[] args) { Random random = new Random(); int result = random.nextInt(100)+1; System.out.println("数为1-100之间的整数"); System.out.println(result); Scanner scanner = new Scanner(System.in); while (true){ System.out.println("请输入值:"); int temp = scanner.nextInt(); if (result > temp){ System.out.println("猜小了,请再猜!"); }else if (result < temp){ System.out.println("猜大了,请再猜!"); }else { System.out.println("恭喜你,猜对了!"); break; } } scanner.close(); } }