实验目的:完成人机猜拳互动游戏的开发
阶段一:实验——分析业务,创建用户类
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]