首页 > 编程语言 >简单的猜拳游戏-JAVA实现

简单的猜拳游戏-JAVA实现

时间:2023-02-19 08:44:18浏览次数:41  
标签:JAVA 猜拳 computerGuess int System 游戏 peopleGuess println out

一个简单的猜拳游戏


package com.zhou.java.demo02;

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

public class Demo09 {
public static void main(String[] args) {
People people = new People();
int WinCount = 0;
int[][] arr = new int[3][3];
int j = 0;
String[] arr2 = new String[3];
Scanner sc = new Scanner(System.in);
String isWin ;
for (int i = 0; i < 3; i++) {
System.out.println("请输入你要猜的拳 (0代表拳头,1代表剪刀,2代表布)");
int num = sc.nextInt();
// 定义人出拳
people.setPeopleGuess(num);
int tomGuess = people.getPeopleGuess();
arr[i][j + 1] = tomGuess;
//定义电脑出拳
int comGuess = people.computerGuess();
arr[i][j + 2] = comGuess;
// 比赛情况
isWin = people.vsComputer();
arr2[i] = isWin;
arr[i][j] = people.count;
//输出比赛情况
System.out.println("================================");
System.out.println("局数\t\t玩家的出拳\t电脑的出拳\t输赢情况");
System.out.println(people.count + " " + tomGuess + "\t " + comGuess + "\t " + isWin);
System.out.println("================================");
System.out.println("\n\n");
WinCount = people.count(isWin);
}

//总结比赛情况
System.out.println("局数\t玩家出拳\t电脑出拳\t输赢情况");
for (int i = 0; i < arr.length; i++) {
for (int k = 0; k < arr[i].length; k++) {
System.out.print(arr[i][k] + " ");
}
System.out.println(arr2[i]);
System.out.println();
}
System.out.println("你赢了" + WinCount + "次");
if(WinCount>=2){
System.out.println("恭喜你,三次比赛你胜过了电脑!");
}else {
System.out.println("很遗憾,你失败了!");
}


}
}
class People{
int peopleGuess;
int computerGuess;
int winCount = 0;
int count =1;

// 电脑 猜拳
public int computerGuess(){
Random r =new Random();
computerGuess = r.nextInt(3);
return computerGuess;
}
// 人 猜拳
public void setPeopleGuess(int peopleGuess){
if (peopleGuess >2 ||peopleGuess<0){
throw new IllegalArgumentException("输入错误");
}
this.peopleGuess =peopleGuess;
}
public int getPeopleGuess(){
return peopleGuess;
}
// 定义输赢情况
public String vsComputer(){
if (peopleGuess==0&&computerGuess==1){
return "你赢了";
}else if (peopleGuess==1&&computerGuess==2){
return "你赢了";
}else if(peopleGuess==2&&computerGuess==0){
return "你赢了";
}else if(peopleGuess==computerGuess){
return "平局";
}else {
return "你输了";
}
}
// 定义赢得次数
public int count(String s){
count++;
if (s.equals("你赢了")){
winCount++;
}
return winCount;
}


}

标签:JAVA,猜拳,computerGuess,int,System,游戏,peopleGuess,println,out
From: https://www.cnblogs.com/wase/p/17134194.html

相关文章

  • 读Java实战(第二版)笔记14_CompletableFuture及反应式编程背后的概念
    1. 潮流1.1. 与应用程序运行的硬件平台相关1.1.1. 编写能充分利用多核处理器能力的软件1.2. 与应用程序的结构相关1.2.1. 反映了互联网应用对可用性日益增长的需......
  • Java语法基础
    关键字和保留字enum:用于定义一组固定的常量(枚举)。abstract:用于声明抽象类,以及抽象方法。break:用于中断循环或switch语句。catch:用于捕获try语句中的异......
  • Java数组&字符串
    Java数组数组是一个对象,它包含了一组固定数量的元素,并且这些元素的类型是相同的。数组会按照索引的方式将元素放在指定的位置上,意味着我们可以通过索引来访问这些元素。在......
  • JavaWeb基本概念
    JavaWeb1、基本概念1.1、前言web开发:web,网页的意思,www.baidu.com静态webhtml,css提供给所有人看的数据始终不会发生变化动态web提供给所有人看的数......
  • javascript & Uncaught TypeError: arr is not iterable bug All In One
    javascript&UncaughtTypeError:arrisnotiterablebugAllInOnefunctioncompute(arr){const[left,symbol,right]=arr;switch(symbol){......
  • PAT-basic-1026 程序运行时间 java
    一、题目要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间。这个时间单......
  • 2月18日的java学习
    2月18日的java学习java的类型原则基本类型(除浮点型)逐渐变大之后先float后double,容器逐渐变大低到高为自动,高到低为强制转换过程中会发生内存泄漏,或者精度丢失......
  • 漏洞分析-存储型XSS-JAVA篇
    0x00原理分析存储型XSS:用户在浏览器传入的数据未做校验,导致一些恶意的前端代码被插入至数据库中,前端再次读取数据时,数据被当成前端代码,或与前端代码拼接并执行。0x01效......
  • java面向对象
    java面向对象以类的方式组织代码,以对象的组织(封装)程序。一个类里面只有方法和属性一个项目至多只有一个main方法创建对象类是抽象的,需要进行实例化publicclass......
  • 算法刷题-字符串排序-JAVA
    0x00引言为获取一个良好的算法思维,以及不再成为一个脚本小子,争取每天一道算法题,培养自己的逻辑思维,温顾各类型语言语法知识。题解只写自己理解的解法,其他解法不再增加。......