Scanner 的基本使用规则
我们可以通过Scanner类来获取用户的输入
基本语法:
Scanner scanner = new Scanner(System.in);
Random的基本使用规则
Random基本适用语法:Random radom = new Random();
1、random.random()
随机生成(0,1)之间的浮点数
2、random.randint(上限,下限)
随机生成在范围之内的整数,两个参数分别表示上限和下限
3、random.randrange( , , )
在指定范围内,按指定基数递增的集合中获得一个随机数,有三个参数,前两个参数代表范围上限和下限,第三个参数是递增增量,不包括下限,包括上限
使用方式如下:
random.randrange( 0,11,2)
随机产生范围为10间隔为2的数
注:这里输出(0,2,4,6,8,10)中一个
4、random.choice(list)
从序列中随机抽选一个数
5、random.shuffle(list)
随机排序
注:list元素为数值型
random.seed(0)设置初始化随机数种子
package Test;
import java.util.Random;
import java.util.Scanner;
import static java.lang.System.*;
public class Test {
public static void main(String[] args) {
//控制台输入
Scanner sc = new Scanner(System.in);
//随机系统
Random radom = new Random();
//生成数字范围(0-99)
int a = radom.nextInt(100);
int i = 0;
//使用do while 循环
do {
//输入数字
out.println("请输入您的猜想");
int ass = sc.nextInt();
if (ass > a) {
out.println("您输入的数值太大了");
}
if (ass < a) {
out.println("您输入的数值太小了");
} else {
out.println("恭喜您猜对了");
}
} while (true);
}
}
接下来,咱们根据原理编写一个猜拳小游戏
package com.koi.shangke.lianxi;
/**
*
*使用Scanner和Random实现猜拳游戏
*
*/
import java.util.Scanner;
import java.util.Random;
public class Demo_2 {
public static void main(String[] args) {
System.out.println("*******欢迎来到猜拳游戏******");
System.out.println("游戏三局两胜,刘洋洋是系统,想尽办法打败她");
System.out.println("游戏规则:从键盘中输入1,2,3中任意一个数");
System.out.println("1-石头\t2-剪刀\t2-布");
Scanner scan=new Scanner(System.in);
int count1=0;
int count2=0;
int count3=0;
while(true){
int people=scan.nextInt();
System.out.println("我们的游戏要开始了,请输入一个数");
switch(people){
case 1:
System.out.println("您出的是石头");
break;
case 2:
System.out.println("您出的是剪刀");
break;
case 3:
System.out.println("您出的是布");
break;
}
Random ram=new Random();
int computer=ram.nextInt(3)+1;
switch (computer){
case 1:
System.out.println("刘洋洋:石头");
break;
case 2:
System.out.println("刘洋洋:剪刀");
break;
case 3:
System.out.println("刘洋洋:布");
break;
}
if(people==computer){
count3++;
System.out.println("平局");
}
else if(people==1&&computer==2||people==2&&computer==3||people==3&&computer==1){
count1++;
System.out.println("本局胜利");
}else{
count2++;
System.out.println("本局输了");
}
System.out.println("请重新输入");
if(count1+count2+count3==3){
System.out.println("*******游戏结束*******");
if(count1>count2){
System.out.println("******恭喜你获得最终的胜利,你可以选择暴揍她一顿!!!******");
}else{
System.out.println("*******好遗憾啊,快跑!!!******");
}
break;
}
}
scan.close();
}
}