java项目实现猜拳小游戏
更新时间:2020年05月27日 09:18:01 作者:Sampson_S
这篇文章主要为大家详细介绍了java项目实现猜拳小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了java实现猜拳小游戏的具体代码,供大家参考,具体内容如下
项目名称
猜拳小游戏
项目描述
玩家与电脑进行猜拳游戏,玩家行为采用输入方式,电脑行为采用随机形式。
代码实现
测试类
public class Test { public static void main(String[] args) { Game game = new Game(); game.start(); } }
主类:实现主方法
public class Game { private People people; private Computer computer; public Game(){ people = new People("zs"); computer = new Computer("computer"); } public void start(){ boolean flag = true; while (flag) { System.out.println("开始游戏:"); int count = 0; while (count < 3) { String peopleFist = people.doFist(); String comFist = computer.doFist(); //people赢 if (peopleFist.equals("石头") && comFist.equals("剪刀") || peopleFist.equals("剪刀") && comFist.equals("布") || peopleFist.equals("布") && comFist.equals("石头")) { System.out.println(people.getName() + "赢了"); people.addScore(1); } else if (peopleFist.equals("石头") && comFist.equals("石头") || peopleFist.equals("剪刀") && comFist.equals("剪刀") || peopleFist.equals("布") && comFist.equals("布")) { System.out.println("平局"); } else if (peopleFist.equals("石头") && comFist.equals("布") || peopleFist.equals("剪刀") && comFist.equals("石头") || peopleFist.equals("布") && comFist.equals("剪刀")) { System.out.println(computer.getName() + "赢了"); computer.addScore(1); } count++; } if (people.getScore() > computer.getScore()) { System.out.println(people.getName() + "赢了 " + people.getScore() + ":" + computer.getScore()); } else if (people.getScore() == computer.getScore()) { System.out.println("平局"); } else if (people.getScore() < computer.getScore()) { System.out.println(computer.getName() + "赢了 " + computer.getScore() + ":" + people.getScore()); } System.out.println("是否开始新游戏:"); Scanner scanner = new Scanner(System.in); String str = scanner.next(); if (str.equals("否")) { flag = false; }else { people.setScore(); computer.setScore(); } } } }
玩家
public class People { private String name; private int score; public People(String name){ this.name = name; score = 0; } public String getName(){ return name; } public void addScore(int score){ this.score += score; } public int getScore(){ return score; } public int setScore(){ this.score = 0; return score; } public String doFist(){ System.out.println("请出拳:"); Scanner scanner = new Scanner(System.in); String fist = scanner.next(); return fist; } }
电脑
public class Computer { private String name; private int score; public Computer(String name){ this.name = name; score = 0; } public String getName(){ return name; } public void addScore(int score){ this.score += score; } public int getScore(){ return score; } public int setScore(){ this.score = 0; return score; } public String doFist(){ Random random = new Random(); int n = random.nextInt(3); String fist; if(n == 0){ fist = "石头"; }else if(n == 1){ fist = "剪刀"; }else { fist = "布"; } System.out.println("对方出的是:"+fist); return fist; } }
更多有趣的经典小游戏实现专题,分享给大家:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
相关文章
Java java.lang.InstantiationException异常案例详解
这篇文章主要介绍了Java java.lang.InstantiationException异常案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下2021-08-08Java基础之toString的序列化 匿名对象 复杂度精解
序列化即为把内存中的对象转换为字节写入文件或通过网络传输到远端服务器,本章节将带你了解Java toString的序列化 匿名对象 复杂度,需要的朋友可以参考下2021-09-09Maven在Java8下如何忽略Javadoc的编译错误详解
这篇文章主要给大家介绍了关于Maven在Java8下如何忽略Javadoc的编译错误的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2018-08-08SpringBoot实现监控Actuator,关闭redis监测
这篇文章主要介绍了SpringBoot实现监控Actuator,关闭redis监测,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-11-11Java使用JDBC向MySQL数据库批次插入10W条数据(测试效率)
使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(100000),如何提高效率呢?今天小编通过本教程给大家介绍下2016-12-12
最新评论