老虎棒子鸡游戏规则:

一个克制一个
  老虎吃鸡
  鸡吃虫子
  虫子蛀杠子
  杠子打老虎
  形成一个完美循环
  无克制类别的直接地平不分胜负
  比如
  老虎和虫子
  杠子和鸡
  都是平局
  继续出直到胜负位置
  值得一提的是
  这是个俩人之间对抗的游戏
  超出就无法定出胜负了
  
GameRule类

import java.util.Scanner;public class GameRule {private int count;private Player player;private Robot robot;public Player getPerson() {return player;}public void setPerson(Player person) {this.player=person;}public Robot getRobot() {return robot;}public void setRobot(Robot robot) {this.robot=robot;}public int  getCount() {return count;}public void setCount(int count) {this.count=count;}public void initial() {player=new Player();robot=new Robot();}public void startGame(){int role=0;System.out.println("────────────────猜拳───────────────────");System.out.println("   1.老虎    2.杠子   3.鸡     4.虫子    \n");System.out.println("   请选择角色:1.阿迪力  2.黄飞鸿  3.马致明");      System.out.println("──────────────────────────────────────");Scanner reader=new Scanner(System.in);role=reader.nextInt();boolean rightRole=true;switch(role) {case 1:System.out.println("您选择了阿迪力这个角色对战");player.setName("阿迪力");break;case 2:System.out.println("您选择了黄飞鸿这个角色对战");player.setName("黄飞鸿");break;case 3:System.out.println("您选择了马致明这个角色对战");player.setName("马致明");break;default:System.out.println("输入错误");rightRole=false;break;}if(rightRole) {String flag="y";do {int num1=0;//用户出拳值int num2=0;//机器人出拳值num1=player.showFist();num2=robot.showFist();//用户获胜if((num1==1&&num2==3)||(num1==2&&num2==1)||(num1==3&&num2==4)||(num1==4&&num2==4)) {System.out.println("恭喜,您赢了!!");   player.setScore(player.getScore()+1);System.out.print("本局对战结果:"); System.out.print(player.getName() +"1分,");    System.out.println("机器人0分!");  }//平局else if((num1==num2)||(num1==1&&num2==4)||(num1==4&&num2==1)||(num1==2&&num2==3)||(num1==3&&num2==2)) {System.out.println("平局,加油!"); }//机器人获胜else {System.out.println("哈哈,您输了!");    System.out.print("本局对战结果:");   System.out.print(player.getName() +"0分,");    System.out.println("机器人1分!");robot.setScore(robot.getScore()+1);}//增加游戏次数count++;System.out.println("输入y继续,n退出");  flag=reader.next();while(!"n".equals(flag) && !"y".equals(flag)) {System.out.println("请重新输入");flag=reader.next();}if("n".equals(flag))System.out.println("───────────────谢谢使用─────────────────");}while("y".equals(flag));//最终对战成绩System.out.println("\t"+player.getName()+"    vs    机器人");int win=player.getScore();int lost=robot.getScore();System.out.println("\t对战"+count+"局,"+"您胜了"+win+"局,输"+lost+"局,平"+(count-win-lost));     if(player.getScore()>robot.getScore()) {System.out.println("\t结果:您是战神,你赢了!");}else if(player.getScore()==robot.getScore()) {System.out.println("\t结果:不相上下哦!");}else {System.out.println("\t结果:您输得很惨啊!");}}else {System.out.println("输入有错,退出系统!");}System.out.println("──────────────────────────────────────");}}

Player类

import java.util.Scanner;public class Player {private String name="匿名";private int score;public String getName() {return name;}public void setName(String name) {this.name=name;}public int getScore() {return score;}public void setScore(int score) {this.score=score;}public Player(String name,int score) {super();this.name=name;this.score=score;}public Player() {super();}public int showFist() {int temp=0;System.out.println("请出拳:(1.老虎,  2.杠子,  3.鸡,  4.虫子)");Scanner reader=new Scanner(System.in);temp=reader.nextInt();switch(temp) {case 1:System.out.println("您出的是老虎");break;case 2:System.out.println("您出的是杠子");break;case 3:System.out.println("您出的是鸡");break;case 4:System.out.println("您出的是虫子");break;default:System.out.println("输入错误");break;            }return temp;}}

Robot类

import java.util.Scanner;public class Robot {private int score;public int getScore() {return score;}public void setScore(int score) {this.score=score;} public int showFist() {int temp=(int)(Math.random()*4+1);switch(temp) {case 1:System.out.println("机器出的是老虎");break;case 2:System.out.println("机器出的是杠子");break;case 3:System.out.println("机器出的是鸡");break;case 4:System.out.println("机器出的是虫子");break;default:break;          }return temp;}
}

StartGame类(测试类)

public class StartGame {public static void main(String[] args) {GameRule game=new GameRule();// 初始化game.initial();game.startGame();}}

【java小游戏】老虎杠子鸡游戏相关推荐

  1. 什么叫计算机游戏,电脑吃鸡游戏叫什么,电脑上的吃鸡游戏叫什么

    吃鸡电脑版叫什么 电脑版本:<绝地求生大逃亡>.手机版本比较多,主要比较火的就是网易的<荒野行动>和腾讯的<绝地求生-刺激战场>.<绝地求生-全军出击> ...

  2. Java小游戏项目:推箱子游戏

    经典的推箱子是一个来自日本的古老游戏,目的是在训练你的逻辑思考能力.在一个狭小的仓库中,要求把木箱放到指定的位置,稍不小心就会出现箱子无法移动或者通道被堵住的情况,所以需要巧妙的利用有限的空间和通道, ...

  3. java 小项目:简单扑克牌游戏

    项目要求 1>新建两个玩家 2>创建扑克牌,洗牌 3>发牌,每个玩家没人拿两张,比较大小 4>比较规则:两个玩家选出各种最大的牌,进行游戏,先比较点数大小,点数大的获胜,点数相 ...

  4. Unity 如何实现第一人称射击游戏(吃鸡游戏)

    关键代码截图: 方向向量决定 FR:海涛高软(HUNK Xu) QQ技术交流群:386476712

  5. java 拼图游戏_Java小项目之:拼图游戏!

    Java小项目之:拼图游戏! 今天教大家用java做出一个拼图游戏,很适合java初学者练手. 所用素材: 部分代码: package picture_mosical; import java.awt ...

  6. 服务器win7系统能搭建手游吗,如何判断自己的Win7系统能否玩吃鸡游戏?

    如何判断自己的Win7系统能否玩吃鸡游戏?吃鸡游戏对电脑配置要求非常高,很多伙伴都不清楚自己的电脑是否能玩吃鸡游戏?这就要看你的电脑配置了,下面给大家分享几种查看电脑配置的方法. 一.首先来看看吃鸡游 ...

  7. 猜物品游戏java编程_小猿圈Java初学者练习小案例:猜数字游戏

    对于Java初学者,如果没有好的引导,可能会觉得自己学什么都不好,学什么都不会,这个时候就要给他们一下小的案例,让他们去实践一下,让他们知道自己学的东西是可以用到的,小猿圈java讲师为你准备了Jav ...

  8. java 后台跳出提示_小猿圈Java初学者练习小案例:猜数字游戏

    对于Java初学者,如果没有好的引导,可能会觉得自己学什么都不好,学什么都不会,这个时候就要给他们一下小的案例,让他们去实践一下,让他们知道自己学的东西是可以用到的,小猿圈java讲师为你准备了Jav ...

  9. 各种经典java小游戏_Java是这个世界上最好的语言!

    为什么? 请看TIOBE最新发布的编程语言排行榜: TIOBE开发语言排行榜每月更新一次,其结果可以用来检阅开发者的编程技能能否跟上趋势,或是否有必要作出战略改变,以及什么编程语言是应该及时掌握的. ...

最新文章

  1. tf.sign和tf.reduce_sum
  2. 【杂谈】从GitHub上星星最多的男人开始发GitHub综述资料
  3. Maven编译时提示:不兼容的类型
  4. 【BJOI2017】树的难题【点分治】【线段树】
  5. idea2021部署maven+javaweb项目到jboss(diy)
  6. 解决PCL 编译报错:undefined reference to `pcl::PCLBase<pcl::PointXYZRGBA>:: XXX
  7. pycharm设置python环境_pycharm怎么配置python环境
  8. PKI体系及密码算法
  9. 相关分析——皮尔逊相关系数、t显著性检验及Python实现
  10. c语言验证费马大定理,费马大定理,用电脑编程证明
  11. 【备忘】【No5】微信公众平台开发入门到实战开发视频教程(Java+PHP)
  12. 计算机中ppt,计算机中的数.ppt
  13. 永远的7日之都怎么在电脑上玩 永远的7日之都安卓模拟器教程
  14. 图书api 查询图书内容
  15. 阿里巴巴Java开发手册 (Alibaba Java Coding Guidelines)
  16. [ZZ]变速齿轮作者的文章--绝杀反外挂方案
  17. 某电商网站的数据库设计(5)——销售信息总表(视图)
  18. 华为系统取名鸿蒙,华为自主操作系统为何取名鸿蒙?看完西游记就知道霸气在哪里!...
  19. 洛谷——P3906 Geodetic集合
  20. 分享一批远程办公软件,总有一款适合你

热门文章

  1. ES6常问面试题(Promise,async和await 等)
  2. Maven编译Docker 镜像并推送到Nexus
  3. Mac升级go版本(指定或最新)
  4. C#中的委托和事件网上最好的解释
  5. 网络拥塞控制,对越远的流量越宽容
  6. 七个好用且免费的在线代码编辑器,你喜欢哪个?
  7. [附源码]java毕业设计病历管理系统
  8. Greedy is Good
  9. 估值调整 - 凸性调整
  10. python编写五子棋小游戏 (电脑自走棋)