JAVA人机猜拳游戏

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();
}
}




  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值