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("游戏结果是平局"); } } }
Java石头剪刀布小游戏
最新推荐文章于 2024-07-22 14:15:06 发布