Java语言高级-常用API-第三节 Random类

本文介绍了Java中的Random类,展示了如何生成指定范围内的随机数,并通过实例讲解了如何利用Random实现一个猜数字小游戏。从导入Random类、创建实例到生成随机数,逐步解析代码逻辑,帮助读者理解随机数生成及其应用。
摘要由CSDN通过智能技术生成

Random概述和基本使用

package demo03;

/*
Random类用来生成随机数字,使用起来也就是三个步骤

1.导包
import java.util.Random;

2.创建
Ramdom r = new Random();//小括号当中留空即可

3.使用 
获取一个随机的int数字(范围是int所有范围,有正负两种);
int num = r.nextInt();
获取一个随机的int数字(参数代表了范围,左闭右开区间);
int num = r.nextInt(3);
实际上代表的含义是:[0,3),也就是0-2
 */
import java.util.Random;
public class Demo01Random {

	public static void main(String[] args){
		Random r = new Random();
		
		int num = r.nextInt();
		System.out.println("随机数是:"+num);
	}
	
}

Random生成指定范围的随机数

package demo03;

import java.util.Random;

public class Demo02Random {
	public static void main(String[] args){
		Random r = new Random();
		
		for(int i = 0;i<100;i++){
			int num = r.nextInt(10);
			System.out.println(num);
		}
	}

}

package demo03;

import java.util.Random;

/*
题目要求:
根据int变量n的值,来获取随机数字,范围是[1,n],可以取到1也可以取到n。

思路:
1.定义一个int变量n,随意赋值
2.要使用Random,三个步骤,导包、创建、使用
3.如果写10,那么就是0-9,然后想要的是1-10,可以发现,整体+1即可。
4.打印随机数字

 */
public class Demo03Random {
	public static void main(String[] args){
	    int n = 5;
		Random r = new Random();
		
		for(int i = 0; i<100; i++){
			int result = r.nextInt(n)+1;//0-n-1
			//本题范围是(0,n),整体+1之后变成了[1,n+1),也就是[1,n]
			System.out.println(result);
		}
		
	}
}

Random练习二 猜数字小游戏

package demo03;

import java.util.Random;
import java.util.Scanner;

/*
题目:
用代码模拟猜数字的小游戏。

思路:
1.首先需要产生一个随机数字,并且一旦产生不在变化,用Random的nextInt方法
2.需要键盘输入,所以用到了Scanner
3.获取键盘输入的数字,用scanner当中的nextInt()方法
4.已经得到了两个数字,判断(if)一下
	如果太大了,提示太大,并且重试
	如果太小了,提示太小,并且重试
	如果猜中了,提示结束
5.重试就是再来一次,循环,次数不确定,用while(true),	
 */
public class Demo04RandomGame {
	public static void main(String[] args){
		Random r = new Random();
		int randomNum = r.nextInt(100)+1;//[1,100]
		Scanner sc = new Scanner(System.in);
		
		while(true){
			System.out.println("请输入你猜测的数字:");
			int guessNum = sc.nextInt();//键盘输入猜测的数字
			
			if(guessNum>randomNum){
				System.out.println("太大了请重试。");
			}else if(guessNum<randomNum){
				System.out.println("太小了请重试。");
			}else{
				System.out.println("恭喜你猜中了");
				break;//如果猜中,不再重试
			}
		}
		
		System.out.println("游戏结束。");
		
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值