Java石头剪刀布小游戏

import java.util.Scanner;
public class game_bug {
    public static void main(String[] args) {
//        定义全局变量
        String player_name="" ;
        int player_choice;
        String com_name="";
        int com_choice;
        String player_choice_name;
        String com_choice_name;
//        按照流程
//        欢迎界面
        System.out.println("*********************************");
        System.out.println("欢迎来到石头剪刀布");
        System.out.println("*********************************");
//        用户输入
        System.out.println("请输入用户名称");
        Scanner scanner=new Scanner(System.in);
//        用户名称 是string类型
//        玩家可能输入空格
        player_name= scanner.nextLine();
//        System.out.println(player_name.equals(""));
//        System.out.println(player_name.trim());
//        玩家可能输入空格 哪一个结果为true,就是player_name的变量内容
//        System.out.println(player_name.equals(""));
//        这个变量的空格可能是多个 包含空格 contains
//        trim  去掉字符串开头和结尾的空格
//        System.out.println(player_name.trim().equals(""));
        if(player_name.trim().equals("")){
            player_name="i匿名玩家";
        }
//        选择电脑的玩家
        System.out.println("****************************");
        System.out.println("1------海绵宝宝");
        System.out.println("2-------帕恰狗");
        System.out.println("****************************");
//        用户选择
        System.out.println("给电脑选择名称");
        String com_no=scanner.next();
        if(com_no.equals("1")){
            com_name="海绵宝宝";
        }else if (com_no.equals("2")){
            com_name="帕恰狗";
        }else{
            com_name="匿名用户";
        }
        System.out.println("电脑选择的名称是"+com_name);
//        开始游戏
//        玩家先出
//        选择
        System.out.println("用户选择");
        System.out.println("***************************");
        System.out.println("1----剪刀");
        System.out.println("2----石头");
        System.out.println("3-----布");
        System.out.println("****************************");
//        玩家出拳使用数字  int类型  使用nextint方法
//        出拳时输入1.2  报错并退出程序
//        player_choice=scanner.nextInt();
//        定义变量player_choice是int型 直接接收可能会报错 这里使用字符串变量
        String tmp_choice=scanner.next();
        if(tmp_choice.equals("1")||tmp_choice.equals("2")||tmp_choice.equals("3")){
//            不同类型通过to。。。方法转化
//            String 转化为整型 就要用到整型的大写Integer 调用parse方法
            player_choice=Integer.parseInt(tmp_choice) ;
        }else{
//            用户不选择 那就随机取值
            player_choice=(int)Math.round(Math.random()*2+1);
        }
        System.out.println(player_choice);
//        电脑随机选择  使用数组 选择数组之间的内容
//        Math.random()产生0~1  +1 1~2 四舍五入取整(1,2)  如果把Math.random扩大两倍就可选到三
//        (int) 强制转化 把long4个字节丢掉
//        电脑选择
        com_choice=(int)Math.round(Math.random()*2+1);
//        判断对错
//        定义选择
        if(player_choice==1){
            player_choice_name="剪刀";
        }else if(player_choice==2){
            player_choice_name="石头";
        }else{
            player_choice_name="布";
        }

        if(com_choice==1){
            com_choice_name="剪刀";
        }else if(com_choice==2){
            com_choice_name="石头";
        }else{
            com_choice_name="布";
        }
        if(player_choice-com_choice==1||player_choice-com_choice==-2){
            System.out.println("玩家"+player_name+"的选择是"+player_choice_name+"");
            System.out.println("电脑"+com_name+"的选择是"+com_choice_name+"");
            System.out.println("游戏结果是玩家"+player_name+"赢");
        }else if(com_choice-player_choice==1||com_choice-player_choice==-2){
            System.out.println("玩家"+player_name+"的选择是"+player_choice_name+"");
            System.out.println("电脑"+com_name+"的选择是"+com_choice_name+"");
            System.out.println("游戏结果是电脑"+com_name+"赢");
        }else{
            System.out.println("玩家"+player_name+"的选择是"+player_choice_name+"");
            System.out.println("电脑"+com_name+"选择是"+com_choice_name+"");
            System.out.println("游戏结果是平局");
        }

    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值