记录生活吧,自己乱搞的,肯定有很多需要优化的地方,各位大佬多多谅解

游戏规则
猜拳游戏
玩家和电脑进行猜拳(石头剪刀布)
每回合分别由玩家和电脑依次出拳
打印显示双方出拳的结果,并对结果进行判定
回合结束后询问玩家是否要继续游戏
如果玩家选择继续游戏则开启下一个回合的猜拳
否则游戏结束
游戏结束后统计前面回合的数据
数据要求显示游戏的总局数,玩家胜利的场数,平局的场数以及失败的场数并显示胜率
根据胜利的场数打印显示最终结果(玩家胜场大于电脑胜场则表示玩家胜利)

import java.io.Serializable;
import java.util.Random;
import java.util.SplittableRandom;/*** 电脑类*/
public class Computer {/*** 出拳的方法*/public int showFinger(){//使用随机数(1-3)出拳Random  a= new Random();int b=a.nextInt(3)+1;return b;}}package com.igeek.demo1;import javax.xml.stream.events.StartDocument;
import java.awt.image.PixelInterleavedSampleModel;
import java.util.Scanner;/*** 游戏类 封装了游戏的业务内容*/
public class Game {//玩家private Player player = new Player();//电脑private Computer cpu = new Computer();int players;int cpus;/*** 开启游戏*/public void  start() {player.setWinCount(0);player.setLoseCount(0);player.setDogfallCount(0);//执行游戏回合gameLogic();//显示游戏统计结果}/*** 每个回合的游戏内容*/public void gameLogic() {players = player.showFinger();//玩家出拳cpus = cpu.showFinger();//电脑出拳//显示出拳结果System.out.println("玩家 :"+changeFinger(players));System.out.println("电脑 :"+changeFinger(cpus));//判定出拳结果//询问玩家是否继续游戏showResult();while(continues()==1){gameLogic();}}/*** 将出拳的数值转换为字符信息(石头剪刀布)的方法** @param figer* @return*/public String changeFinger(int figer) {if (figer == 1) {return "石头";} else if (figer == 2) {return "剪刀";} else {return "布";}}/*** 游戏结果的显示统计*/public void showResult () {pandingResult(players,cpus);System.out.println("平局为:"+player.getDogfallCount());System.out.println("胜局为:"+player.getWinCount());System.out.println("败局为:"+player.getLoseCount());}public int continues(){System.out.println("是否继续:继续则输1;退出则输0" );Scanner input =new Scanner(System.in);int b=input.nextInt();return b;}public void pandingResult (int a,int b) {if(a==1&&b==1){player.setDogfallCount(player.getDogfallCount()+1);}else if(a==2&&b==2){player.setDogfallCount(player.getDogfallCount()+1);}else if(a==3&&b==3){player.setDogfallCount(player.getDogfallCount()+1);}else if(a==1&&b==2){player.setWinCount(player.getWinCount()+1);}else if(a==1&&b==3){player.setLoseCount(player.getLoseCount()+1);}else if(a==2&&b==1){player.setLoseCount(player.getLoseCount()+1);}else if(a==2&&b==3){player.setWinCount(player.getWinCount()+1);}else if(a==3&&b==1){player.setWinCount(player.getWinCount()+1);}else if(a==3&&b==2){player.setLoseCount(player.getLoseCount()+1);}}}package com.igeek.demo1;import com.sun.jdi.PathSearchingVirtualMachine;import java.util.Scanner;/*** 玩家类*/
public class Player {//胜场private  int winCount;//平场private int dogfallCount;//输场private int loseCount;/*** 出拳的方法*/public int showFinger(){System.out.println("请输入1:石头;2:剪刀;3:布");Scanner input =new Scanner(System.in);int b=input.nextInt();return b;}public int getWinCount() {return winCount;}public void setWinCount(int winCount) {this.winCount = winCount;}public int getDogfallCount() {return dogfallCount;}public void setDogfallCount(int dogfallCount) {this.dogfallCount = dogfallCount;}public int getLoseCount() {return loseCount;}public void setLoseCount(int loseCount) {this.loseCount = loseCount;}
}package com.igeek.demo1;public class main {public static void main(String[] args) {Game am=new Game();am.start();}}

重游java(猜拳项目)相关推荐

  1. 重游java(猜数和逛街)

    实在没办法了,写那种底层东西没人看,只能来传点这种代码,如果有哪里不理解的,评论区留言 题目1: 实现猜数的游戏过程:由系统产生一个1-100的随机数,由玩家输入猜的数,系统根据玩家猜的数提示信息 如 ...

  2. Java学习之路1——安装JDK1.8||安装idea2022||Java项目创建【重拾Java】

    Java学习之路1--安装JDK1.8||安装idea2022[重拾Java] 前言 安装 安装JDK1.8 安装idea2022(JetBrains Toolbox) Java项目创建 创建 项目结 ...

  3. Java毕设项目桌游店会员管理系统计算机(附源码+系统+数据库+LW)

    Java毕设项目桌游店会员管理系统计算机(附源码+系统+数据库+LW) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ E ...

  4. Java毕设项目桌游店会员管理系统(java+VUE+Mybatis+Maven+Mysql)

    Java毕设项目桌游店会员管理系统(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(We ...

  5. java maven 项目依赖管理 简介

    目录 一.简单的小问题? 二.maven到底是什么? 三.maven的安装 四.仓库的概念 五.使用命令行管理maven项目 六.使用Myeclipse创建maven自定义项目 七.pom.xml的依 ...

  6. 本篇文档介绍如何手动在ECS实例上部署Java web项目

    本篇文档介绍如何手动在ECS实例上部署Java web项目.适用于刚开始使用阿里云进行建站的个人用户. 项目配置 { .section} 本篇教程在示例步骤中使用了以下版本的软件.操作时,请您以实际软 ...

  7. java gc时会暂停运行吗,java gc 项目终止运行

    当前位置:我的异常网» 编程 » java gc 项目终止运行 java gc 项目终止运行 www.myexceptions.net  网友分享于:2013-09-03  浏览:6次 java gc ...

  8. github java开源项目经验_Java 开源项目 GitHub 趋势周报 20201230

    [关注获取更多精选开源图书] 大家好!我是超级机器人 UltraBot,今天给大家推送本周 Java 开源项目 GitHub 趋势周报,本周更新开源项目 64. brettwooldridge / H ...

  9. Java Web项目性能测试 - JMeter测试网站吞吐量、反应时间百分比、流量

    Java Web项目性能测试 - JMeter测试网站吞吐量.反应时间百分比.流量 为了衡量.调整.完成Java Web项目的性能指标,满足客户.用户对性能的要求,保证项目上线后能正常运行,以及了解项 ...

最新文章

  1. C6678-SRIO和FPGA的通信
  2. 小学生python入门-写给中小学老师们的Python入门指引
  3. 40种为网页设计师准备的高品质和免费的多媒体PSD文件
  4. 深入理解Java虚拟机——JVM类加载机制(类加载过程和类加载器)
  5. 二叉树相关知识及求深度的代码实现
  6. 互联网日报 | 5月25日 星期二 | 华为再次重申不造车;贝壳宣布左晖为公司“永远的荣誉董事长”;清华大学成立量子信息班...
  7. java shirofilter_Spring项目集成ShiroFilter简单实现权限管理
  8. apache+php
  9. IDC:2017年医疗行业IT花费将达336.5亿
  10. 【渝粤教育】国家开放大学2018年秋季 2720T实用管理基础 参考试题
  11. 原生js实现分页效果(带实例)
  12. electron Windows和mac 的菜单栏隐藏
  13. matlab蒙特卡洛法求概率,基于某MATLAB的蒙特卡洛方法对可靠度的计算.doc
  14. Spring bean生命周期详解
  15. java text to speech_java - 无法使用“ TextToSpeech.speak()”方法 - 堆栈内存溢出
  16. 同工作组计算机连接用户名和密码错误,登录失败: 未知的用户名或错误密码
  17. 无线蓝牙打印机服务器有什么用,蓝牙打印机价格怎么样 蓝牙打印机有什么用途...
  18. 逻辑函数的公式化减法
  19. 一张图慢慢转换成下一张图_给一张照片做一个视频 如何把一张图片制作成几分钟的视频|图片做成视频软件...
  20. java 内联_Java内联类初探

热门文章

  1. Database之SQL:自定义创建数据库的各种表demo集合(以方便理解和分析sql的各种增删改查语法的具体用法)
  2. Python之pandas:pandas的get_dummies函数简介(将分类变量转为哑变量)及其使用方法之详细攻略
  3. ML之回归预测:利用两种机器学习算法(LiR,XGBoost(调优+重要性可视化+特征选择模型))对无人驾驶汽车系统参数(2017年的data,18+2)进行回归预测值VS真实值
  4. 聊一聊深度学习的weight initialization
  5. 关于SCI的那些事儿
  6. react中component存在性能问题
  7. 浅谈linux命令大全
  8. 拓展编辑器(五)_监听事件
  9. 【BZOJ2115】[Wc2011] Xor 高斯消元求线性基+DFS
  10. C++学习19 类的多继承