Java 人机猜拳小游戏

该文描述了一个Java编程实验,旨在创建一个人机猜拳互动游戏。通过分析业务,创建了用户类(User)、计算机类(Computer)以及游戏类(Game),实现了用户与计算机的出拳交互,包括随机数生成、比较胜负和循环对战等功能。用户可以选择不同的角色进行游戏,并在结束后显示对战结果和得分。
摘要由CSDN通过智能技术生成

实验目的:完成人机猜拳互动游戏的开发

阶段一:实验——分析业务,创建用户类

1.分析业务,抽象出类、类的特征和行为
2.创建出用户类

阶段二:实验——创建出计算机类

创建计算机类Computer。实现计算机出拳
产生一个1—3的随机数,模拟计算机的出拳结果

阶段三:实验——创建游戏类,选择对战对手

1.创建游戏类Game
2.编写游戏类的初始化方法initial()
3.编写游戏类的开始游戏方法startGame()

阶段四:实验——实现一局对战

分别调用用户类和计算机类的出拳方法showFist(),接受返回值并比较,给出胜负结果

阶段五:实验——实现循环对战,并累计得分

实现循环对战,并且累加赢家的得分

阶段六:实验——显示对战结果

游戏结束后,显示对战结果
编写showResult()方法,比较二者的得分情况,给出对战结果

阶段七:实验——完善游戏类的startGame()

输入并保存用户姓名,游戏结束后显示双方的各自得分

代码实现

User.java


import java.util.Scanner;

public class User {
   
    String[] name;  //姓名
    int score;   //积分

    public User(){
   
        name = new String[3];
        this.name[0]="匿名";
        this.name[1]="小羊";
        this.name[2]="修勾";
    }
    public int showFist(){
    //出拳
        boolean flag=true;  
        int userFist=0;
        Scanner scanner =new Scanner(System.in);
        System.out.println("请出拳(1:剪刀 2:石头 3:布):");
        while(flag){
   
             userFist = scanner.nextInt();
        switch (userFist) {
   
            case 1:
                System.out.println("你出拳:剪刀");
                flag =false;
                break;
            case 2:
                System.out.println("你出拳:石头");
                flag =false;
                break;
            case 3:
                System.out.println("你出拳:布");
                flag =false;
                break;
            default:
                System.out.println("发生了一个意料之外的错误");
                System.out.println("请出拳(1:剪刀 2:石头 3:布):");
        }
        }

        return userFist;
    }
}

Computer.java

import java.util.Random;

public class Computer {
   
    String[] name;
    int score;

    public  Computer(){
   
        name = new String[3];
        this.name[0]="刘备";
        this.name[1]="孙权";
        this.name[2]
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值