常用类Scanner和Random


Scanner 类

定义:提供了一个可以接收 InputStream 类型的构造方法,这就表示只要是字节输入流的子类都可以通过 Scanner 类进行方便的读取。

public class ScannerTest {
public static void main(String[] args) {
//1.定义扫描器用来扫描键盘的输入
 
Scanner scanner=new Scanner(System.in);
//2.打印输出一个提示信息
//3.使用扫描器对象获得键盘的输入
int num=scanner . nextInt();
//4.使用结果
System. out. println("你输出的是: "+num) ;
}
}

Random类:

定义:位于java.util.Random包下。是产生随机数的类。

因此它的使用方法有很多:

//无参构造方法使用
Random random = new Random();
 
int num1 = random.nextInt();//产生任意int类型随机数
 
int num2 = random.nextInt(20);//产生[0,20)int类型随机数
 
float num3 = random.nextFloat();//产生[0.0,1.0)float类型随机数
 
long num4 = random.nextLong();//产生任意long类型随机数
 
double num5 = random.nextDouble();//产生[0.0,1.0)double类型随机数
 
boolean num6 = random.nextBoolean();//产生true false 随机布尔值
举例说明
1.生成[0,1.0)区间的小数:double d1 = r.nextDouble();
2.生成[0,5.0)区间的小数:double d2 = r.nextDouble() * 5;
3.生成[1,2.5)区间的小数:double d3 = r.nextDouble() * 1.5 + 1;
4.生成-231到231-1之间的整数:int n = r.nextInt();
5.生成[0,10)区间的整数:
方法一:int n2 = r.nextInt(10);
方法二:int n2 = Math.abs(r.nextInt() % 10);

知道了Scanner 类和Random 类的基本概念我们就可以依靠它们的特性写一个小游戏

猜数字游戏

public class cai {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        Random random=new Random();
        //生成0-99  再加1  1-100
        int num=random.nextInt(100)+1;
        //统计猜的总次数
        int count=1;
        //使用死循环进行猜数字,直到猜对结束循环
        do {
            System.out.println("请输入你猜的数字");
            int input=scanner.nextInt();
            if (input>num){
                System.out.println("猜大了!");
            }else if (input<num){
                System.out.println("猜小了!");
            }else {
                System.out.println("恭喜你猜对了!");
                //猜对了结束循环
                break;
            }
            count++;
        }while (true);
        System.out.println("本次游戏共猜了"+count+"次");
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值