首页 > 编程语言 >Java猜拳小游戏

Java猜拳小游戏

时间:2023-08-26 10:05:14浏览次数:46  
标签:Java 猜拳 System 小游戏 reader println 输入 out

以下代码是一个猜拳小游戏的实现,其中包含了用户输入、随机数生成、逻辑判断和输出结果等功能。首先让用户输入名字,然后每轮循环中用户输入出拳手势,根据输入的数字1、2、3分别代表石头、剪刀、布;同时,系统也会产生一个随机数表示电脑出拳手势。判断用户和电脑的胜负关系,并输出结果。如果输入的数字为0则退出游戏。 MyMath是一个辅助类,用来生成1-3之间的随机整数。

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

public class GuessGame
{
    String userName;
    Scanner reader=new Scanner(System.in);
    public GuessGame()
    {
        System.out.println("------欢迎来到猜拳小游戏------");
        System.out.println("请输入你的名字:");
        this.userName= reader.next();
    }
    public void startGame()
    {
        System.out.println("欢迎你,"+userName);
        while(true)
        {
            System.out.println("请输入1-石头,2-剪刀,3-布,0-退出");
            int u=reader.nextInt();
            if(u>=1&&u<=3)
            {
                MyMath m=new MyMath();// 产生一个随机数
                int c=m.getRandom();
                judge(u,c);// 判断胜负
            }else if(u==0)
            {
                System.out.println("退出游戏,欢迎下次再玩");
                break;
            }else
            {
                System.out.println("输入有误,请再次输入");
            }
        }
    }
    public void judge(int u,int c)
    {
        if(u==1&&c==2||u==2&&c==3||u==3&&c==1)
        {
            System.out.println("你出的是"+getState(u)+",电脑出的是"+getState(c)+",你赢了!!!");
        }else if(u==1&&c==3||u==2&&c==1||u==3&&c==2)
        {
            System.out.println("你出的是"+getState(u)+",电脑出的是"+getState(c)+",你输了!!!");
        }else
        {
            System.out.println("你出的是"+getState(u)+",电脑出的是"+getState(c)+",平局!!!");
        }
    }
    public String getState(int u)
    {
        String state="";// 将类型与编号对应
        switch(u)
        {
            case 1:
                state="石头";
                break;
            case 2:
                state="剪刀";
                break;
            case 3:
                state="布";
                break;
        }
        return state;
    }
}
class MyMath
{
    public int getRandom()
    {
        Random rd=new Random();
        int number = rd.nextInt(3) + 1;//生成1-3的随机数
        return number;
    }
}

标签:Java,猜拳,System,小游戏,reader,println,输入,out
From: https://blog.51cto.com/u_16131726/7240140

相关文章

  • JavaScript-算术运算符
    概述JavaScript共提供10个算术运算符,用来完成基本的算术运算。加法运算符:x+y减法运算符: x-y乘法运算符: x*y除法运算符:x/y指数运算符:x**y余数运算符:x%y自增运算符:++x 或者 x++自减运算符:--x 或者 x--数值运算符: +x负数值运算符:-x减法、乘法、除法运算法比较单纯......
  • java封装、this关键字
    一,封装1,概述-指的就是把对象的属性细节隐藏起来,外部通过共有的方式来访问。2,好处-提高了代码复用性-提高了安全性3,原则-把不需要对外提供的内容都隐藏起来,根据需求提供对应的共有的访问方式。packagecom.momo.demo;/*我们在使用这个案例的过程中,发现了问题:通过对象给成员变量赋值......
  • Java中的泛型概念
    在Java中,泛型是一种强类型检查机制,它允许我们在编译时期指定类、接口或方法的参数和返回值类型。使用泛型可以实现代码的重用性、类型安全性和提高代码的可读性。下面是关于Java泛型的一些重要概念和用法:泛型类(GenericClass):通过在类名后面使用尖括号<T>来声明一个泛型类,在类......
  • Java流程控制switch选择结构
    swich选择结构多选择结构还有一个实现方式,就是swichcase语句swichcase语句判断一个变量与一个系列值中某个值是否相等,每个值称为一个分支swich语句中变量类型可以是byte、short、int、char,从Java7SE开始swich支持字符串String类型,同时case标签必须为字符串常量或者字面......
  • 一维数组java练习
    1、打印下列图形*****************************************图形一:publicclassHomeWork8_24{publicstatic......
  • 变量和数据类型java练习
    1.①packagecom.company;publicclassHomeWork8_19{publicstaticvoidmain(String[]args){Stringname="小明";intage=25;intseniority=3;intage1=5;Stringsubject="java";......
  • 选择结构和循环结构java练习
    1、通过键盘输入学生分数并根据成绩定档:0-59分“不及格”,60-69分“及格”,70-79分“中等”,80-89分“良好”,90-100分“优秀”importjava.util.Scanner;publicclassHomeWork8_22{publicstaticvoidmain(String[]args){Scannerscanner=newScanner(System......
  • java循环
    packagecom.momo.demo;importjava.util.Scanner;/*注意:做判断的时候不仅要考虑正确数据,边界数据,错误数据*/publicclassDemo1{publicstaticvoidmain(String[]args){Scannersc=newScanner(System.in);System.out.println("输入成绩:");intscore=sc.nextInt();/*if(......
  • java入门
    java入门1、java语言简介1、java语言优点使用最广泛,且简单易学java是一门强类型语言java是非常完善的异常处理机制java提供了对大数据的基础性的支持2、java语言特点开源:java源代码是开饭的。跨平台:用java编写的代码或程序,可以在不同的操作系统上运行。JV......
  • Java 程序打印 OpenCV 的版本
    我们可以使用Java程序来使用OpenCV。OpenCV的使用需要动态库的加载才可以。  加载动态库到OpenCV的官方网站上下载最新的发布版本。  Windows下载的是一个可执行文件,没关系,这个可执行文件是一个自解压程序。当你运行以后会提示你进行解压。拷贝动态库到W......