Java人机猜拳游戏
用户类 User
import java.util.Scanner;
public class User {
String userName;
int grade;
Scanner input=new Scanner(System.in);
int a;
public String guess() {
Scanner input=new Scanner(System.in);
System.out.print("请出拳:1.剪刀2.石头3.布(输入相应的数字):");
a=input.nextInt();
String b=" ";
switch (a) {
case 1:
b="剪刀";
System.out.println("你出拳:"+b);
break;
case 2:
b="石头";
System.out.println("你出拳:"+b);
break;
case 3:
b="布";
System.out.println("你出拳:"+b);
break;
default:
break;
}
return b ;
}
public String name() {
System.out.println("请输入你的姓名:");
userName=input.next();
return userName;
}
}
```java
## 标题 Computer 电脑类
import java.util.Scanner;
public class Computer {
String computerName;
int grade;
int a;
Scanner input=new Scanner(System.in);
public String guess() {
a=(int)(Math.random()*3)+1;
String b="";
switch (a) {
case 1:
b="剪刀";
System.out.println(computerName+"出拳:"+b);
break;
case 2:
b="石头";
System.out.println(computerName+"出拳:"+b);
break;
case 3:
b="布";
System.out.println(computerName+"出拳:"+b);
default:
break;
}
return b ;
}
public void name() {
System.out.print("请选着对方角色(1:刘备 2:孙权 3:曹操)");
int name=input.nextInt();
if (name==1) {
computerName="刘备";
}else if (name==2) {
computerName="孙权";
} else if (name==3) {
computerName="曹操";
}
}
}
```java
# 游戏类
package cn.guoqing;
import java.util.Scanner;
public class Game {
String playerComputer;
String playerUser;
int number;
int countComputer;
int countUser;
Scanner input=new Scanner(System.in);
Computer computer=new Computer();
User user=new User();
public void initial() {
Scanner input=new Scanner(System.in);
System.out.println("***********欢迎进入游戏世界***********"+"\n\n");
System.out.println("猜拳规则:1丶剪刀2丶石头3丶布 ");
computer.name();
playerComputer=computer.computerName;
user.name();
playerUser=user.userName;
System.out.println(playerUser+"VS"+playerComputer);
}
public void startGame() {
System.out.println("要开始吗?(y/n)");
String start=input.next();
while(start.equals("y")||start.equals("Y")) {
user.guess();
computer.guess();
reusltGame();
break;
}
}
public void reusltGame() {
int resultComputer=computer.a;
int resultUser=user.a;
if (resultComputer==resultUser) {
System.out.println("平局!");
number++;
}else if ((resultUser==1&&resultComputer==2)||(resultUser==2&&resultComputer==3)||
(resultUser==3&&resultComputer==1)) {
System.out.println("结果:"+playerComputer+"赢");
countComputer++;
number++;
}else if ((resultUser==1&&resultComputer==3)||(resultUser==2&&resultComputer==1)||
(resultUser==3&&resultComputer==2)){
System.out.println("结果:恭喜你赢了");
countUser++;
number++;
}
System.out.println("是否要开始下一轮(y/n)");
String start1=input.next();
if (start1.equals("Y")||start1.equals("y")) {
startGame();
}else {
showGame();
}
}
public void showGame() {
System.out.println("--------------------------------------------");
System.out.println(playerUser+"VS"+playerComputer+"\n\n");
System.out.println("对战次数"+number);
System.out.println();
System.out.println("姓名"+"\t\t"+"得分");
System.out.println(playerUser+"\t\t"+countUser);
System.out.println(playerComputer+"\t\t"+countComputer);
System.out.println();
if (countUser==countComputer) {
System.out.println("平局");
}else if (countUser>countComputer) {
System.out.println("恭喜恭喜");
}else if (countUser<countComputer) {
System.out.println("你输了");
}
System.out.println("---------------------------------------------");
}
}
##测试类
```java
public class TestGame {
public static void main(String[] args) {
Game game=new Game();
game.initial();
game.startGame();
}
}