Java面向对象之猜拳游戏

 更新时间:2021年05月19日 09:51:40   作者:&小小白&  
这篇文章主要为大家详细介绍了Java面向对象之猜拳游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

Java面向对象之猜拳游戏,供大家参考,具体内容如下

1 要求

与电脑进行猜拳并记录分数。

2 Computer.java 源代码(电脑自动随机出拳)

public class Computer {
    public void Fingers(int index) {
        String[] fingers = {"石头", "剪刀", "布"};
        System.out.println("电脑出拳:" + fingers[index]);
    }
}

3 Game.java 源代码(实现主要功能的类)

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

public class Game {
    public void initial(){
        //页面
        Scanner scanner = new Scanner(System.in);
        System.out.println("-------------------欢迎进入游戏界面-------------------");
        System.out.println();
        System.out.println("               ***********************");
        System.out.println("               *******猜拳,开始!******");
        System.out.println("               ***********************");
        System.out.println("出拳规则:0.石头 1.剪刀 2.布");

        //输入姓名
        System.out.print("请输入你的姓名:");
        String name = scanner.next();
        System.out.println(name+" VS 汶老板  对战");

        //判断是否开始
        System.out.print("要开始吗?(输入yes/no):");
        String b =scanner.next();
        int count = 0;
        int usercount=0;
        int computercount=0;
        while (b.equals("yes")){
            //统计对战次数
            count++;

            //玩家出拳
            System.out.print("请出拳 0.石头 1.剪刀 2.布(输入相对应的数字):");
            int a = scanner.nextInt();
            String [] fingers = {"石头","剪刀","布"};
            System.out.println("你出拳:"+fingers[a]);

            //电脑随机出拳
            Random random = new Random();
            int index = random.nextInt(3);
            Computer computer = new Computer();
            computer.Fingers(index);

            //判断输赢
            if ((a == 0 && index == 1)||(a == 1 && index == 2)||(a == 2 && index == 0)) {
                System.out.println("结果说:恭喜你,你赢得了!");
                usercount = usercount+1;
            }else if ((a == 0 && index == 2)||(a == 1 && index == 0)||(a == 2 && index == 1)){
                System.out.println("结果说:很抱歉,你输了!");
                computercount = computercount+1;
            }else{
                System.out.println("结果说:平局!");
            }

            //是否进行下一局
            System.out.print("是否继续进行下一局!(输入yes/no)");
            b = scanner.next();
        }

        //总结
        System.out.println("----------------------总结---------------------");
        System.out.println(name+" VS 汶老板");
        System.out.println("对战次数:"+count);
        System.out.println("姓名\t\t得分");
        System.out.println("汶老板\t"+computercount);
        System.out.println(name+"\t"+usercount);
        String i = computercount>usercount?"很遗憾,你输了本场比赛!":computercount<usercount?"恭喜你,你赢得了本场比赛!":"平局!";
        System.out.println(i);
    }
}

3 Client.java 源代码(测试类)

public class Client {
    public static void main(String[] args) {
        Game game  = new Game();
        game.initial();
    }
}

4 结果截图

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • java生成申请单序列号的实现方法

    java生成申请单序列号的实现方法

    申请单序列号一般要求根据一定的规则生成后几位连续的字符串,下面是我项目中使用的生成序列号的代码,其中用到了锁机制,有需要的朋友可以参考一下
    2014-01-01
  • SpringBoot和Swagger结合提高API开发效率

    SpringBoot和Swagger结合提高API开发效率

    这篇文章主要介绍了SpringBoot和Swagger结合提高API开发效率的相关资料,需要的朋友可以参考下
    2017-09-09
  • 一文总结 Shiro 实战教程

    一文总结 Shiro 实战教程

    shiro是apache的一个开源框架,是一个权限管理的框架,实现 用户认证、用户授权,这篇文章详细总结了shiro用法,感兴趣的同学可以参考阅读
    2023-04-04
  • 详解Java关于JDK中时间日期的API

    详解Java关于JDK中时间日期的API

    这篇文章主要介绍了详解Java关于JDK中时间日期的API,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • spring声明式事务@Transactional开发常犯的几个错误及最新解决方案

    spring声明式事务@Transactional开发常犯的几个错误及最新解决方案

    使用声明式事务@Transactional进行事务一致性的管理,在开发过程中,发现很多开发同学都用错了spring声明式事务@Transactional或使用不规范,导致出现各种事务问题,这篇文章主要介绍了spring声明式事务@Transactional开发常犯的几个错误及解决办法,需要的朋友可以参考下
    2024-02-02
  • Spring MVC的项目准备和连接建立方法

    Spring MVC的项目准备和连接建立方法

    SpringWebMVC是基于Servlet API的Web框架,属于Spring框架的一部分,主要用于简化Web应用程序的开发,SpringMVC通过控制器接收请求,使用模型处理数据,并通过视图展示结果,感兴趣的朋友跟随小编一起看看吧
    2024-10-10
  • SpringBoot压缩png, jpg, jpeg, webp类型图片的实现代码

    SpringBoot压缩png, jpg, jpeg, webp类型图片的实现代码

    这篇文章主要介绍了SpringBoot压缩png, jpg, jpeg, webp类型图片的实现,文中通过代码示例和图文结合的方式给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-08-08
  • Java仿12306图片验证码

    Java仿12306图片验证码

    这篇文章主要为大家详细介绍了Java仿12306的图片验证码的相关资料,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-04-04
  • SpringMVC框架和SpringBoot项目中控制器的响应结果深入分析

    SpringMVC框架和SpringBoot项目中控制器的响应结果深入分析

    这篇文章主要介绍了SpringMVC框架和SpringBoot项目中控制器的响应结果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2022-12-12
  • 如何在Java中优雅地判空详解

    如何在Java中优雅地判空详解

    这篇文章主要大家介绍了关于如何在Java中优雅地判空的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-11-11

最新评论