用Java编写的猜拳小游戏

学习目标:

熟练掌握各种循环语句

例题:

代码如下:

// 综合案例分析,猜拳案例
// isContinue为是否开始游戏时你所输入的值
char isContinue;
//y为开始,n为借宿
System.out.println("是否开始游戏(y/n)");
Scanner sc = new Scanner(System.in);
String str = sc.next();
// 获取你输入字符串的第一个字符
isContinue = str.charAt(0);
// mcount代表玩家赢的局数,pcount代表电脑赢的局数
int mcount = 0, pcount = 0;

//你的名字
System.out.println("请输入您的名字");
String pName = sc.next();
System.out.println("您的名字是:" + pName);

System.out.println("请选择您的对手:1、貂蝉, 2、小肥羊,3、吕布");
// cpuName电脑名字
String cpuName = null;
int num3 = sc.nextInt();
if(num3 >= 1 && num3 <= 3) {
	switch (num3) {
	   case 1 : {
	       cpuName = "貂蝉";
	   } break;
	   case 2 : {
	       cpuName = "小肥羊";
	   } break;
	   case 3 : {
	       cpuName = "吕布";
	   }
	}
System.out.println(pName + " VS " + cpuName);

// 让大小写都能运行
if(isContinue == 'y' || isContinue == 'Y' || isContinue == 'n' || isContinue == 'N') {
    while(isContinue == 'y' || isContinue == 'Y') {
        System.out.println("请输入您要出的东西:1、布, 2、拳头,3、剪刀");
        int num = sc.nextInt();
        switch(num) {
            case 1 : {System.out.println(pName + "出的是布");} break;
            case 2 : { System.out.println(pName + "出的是拳头"); }; break;
            case 3 : { System.out.println(pName + "出的是剪刀"); }; break;
            default : { System.out.println(pName + "的输入不规范,请重新输入"); }
            //输入出错,跳出当前循环回到while,重新输入
            continue;
        }
        // 让电脑随机生成1~3的随机数
        Random num2 = new Random();
        // +1是因为前面代码生成的是0~2,+1后就变成了1~3
        int cpt = num2.nextInt(3) + 1;
        // 判断电脑产生的随机数
        switch(cpt) {
            case 1 : {
                System.out.println(cpuName + "出的是布");
            }; break;
            case 2 : {
                System.out.println(cpuName + "的是拳头");
            }; break;
            case 3 : {
                System.out.println(cpuName + "的是剪刀");
            }; break;
        }
        // 把自己输入的数与电脑随机产生的随机数相比较
        if(num == cpt) {
            System.out.println(pName + "和" + cpuName + "这局打平!");
        } else if((num == 1 && cpt == 2) || (num == 2 && cpt == 3) || (num == 3 && cpt == 1)) {
            System.out.println(pName + "赢了!");
            mcount++;
        } else {
            System.out.println(cpuName + "赢了!");
            pcount++;
        }
        System.out.println(pName + "共赢了" + mcount + "局" + "     " + cpuName + "共赢了" + pcount + "局");
        System.out.println("是否继续游戏(y/n)");
        str = sc.next();
        isContinue = str.charAt(0);
    }
} else {
    System.out.println("您输入的不符合规则,游戏结束!");
}

} else {
System.out.println("您输入的数据不符合规范!");
}

运行效果:

是否开始游戏(y/n)
y
请输入您的名字
lalal
您的名字是:lalal
请选择您的对手:1、貂蝉, 2、小肥羊,3、吕布
1
lalal VS 貂蝉
请输入您要出的东西:1、布, 2、拳头,3、剪刀
3
lalal出的是剪刀
貂蝉的是剪刀
lalal和貂蝉这局打平!
lalal共赢了0局     貂蝉共赢了0局
是否继续游戏(y/n)
y
请输入您要出的东西:1、布, 2、拳头,3、剪刀
5
lalal的输入不规范,请重新输入
请输入您要出的东西:1、布, 2、拳头,3、剪刀
1
lalal出的是布
貂蝉的是拳头
lalal赢了!
lalal共赢了1局     貂蝉共赢了0局
是否继续游戏(y/n)
n

Process finished with exit code 0

总结:

以上就是用Java编写的猜拳小游戏了,代码仅供参考

posted @ 2021-03-12 13:19  Yan_Yang  阅读(764)  评论(0编辑  收藏  举报