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对字符串进行加密解密

    这篇文章主要为大家详细介绍了Java字符串加密解密,对用户输入的每个字符的值进行加密解密,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Java实现解析.xlsb文件的示例代码

    Java实现解析.xlsb文件的示例代码

    这篇文章主要为大家详细介绍了Java实现解析.xlsb文件的相关方法,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的可以了解一下
    2023-01-01
  • Java swing实现支持录音等功能的钢琴程序

    Java swing实现支持录音等功能的钢琴程序

    这篇文章主要为大家详细介绍了Java swing实现钢琴程序,支持录音等功能的Java钢琴源码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • spring boot jar部署控制台日志乱码的解决

    spring boot jar部署控制台日志乱码的解决

    这篇文章主要介绍了spring boot jar部署控制台日志乱码的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • 使用Java编写一个简单的Web的监控系统

    使用Java编写一个简单的Web的监控系统

    这篇文章主要介绍了使用Java编写一个简单的Web的监控系统的例子,并且将重要信息转为XML通过网页前端显示,非常之实用,需要的朋友可以参考下
    2015-11-11
  • java逗号分隔String字符串及数组、集合相互转换

    java逗号分隔String字符串及数组、集合相互转换

    我们在日常开发时会经常遇到将一个字符串按照逗号进行分割,这篇文章主要给大家介绍了关于java逗号分隔String字符串及数组、集合相互转换的相关资料,文中给出了详细的代码示例,需要的朋友可以参考下
    2024-02-02
  • Java Swing实现记事本页面

    Java Swing实现记事本页面

    这篇文章主要为大家详细介绍了Java Swing实现记事本页面,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • 详谈jpa中表的@OneToMany等关联关系

    详谈jpa中表的@OneToMany等关联关系

    这篇文章主要介绍了详谈jpa中表的@OneToMany等关联关系,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 18个Java8日期处理的实践(太有用了)

    18个Java8日期处理的实践(太有用了)

    这篇文章主要介绍了18个Java8日期处理的实践(太有用了),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • java实现多选批量删除功能

    java实现多选批量删除功能

    工作中批量删除可以提高我们的工作效率,今天这篇文章主要介绍了java实现多选批量删除功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08

最新评论