Bootstrap

使用java完成 剪刀石头布 的游戏

        “剪刀石头布”这个游戏我们都是知道且会玩的,那么该如何使用java程序代码来完成这个小游戏呢? 完成这个游戏的代码非常简单,主要用到了Scanner和Random函数,以及switch多重循环语句。

        Scanner函数主要是实现输入功能,而Random函数则是随机产生一个数字与我们所输入的数字进行比较。在比较的时候是使用了三元运算b ? x : y , 它会首先计算b,如果b为true,则只计算x,否则,只计算y。

        在使用switch语句的时候,我在case语句使用了新语法 “ ->,在使用新语法 “ ->”的时候,不需要break语句,如果有多条语句,需要用{}括起来。当然你也可以选择熟悉的case语句,但是别忘了break。

        下面就是具体的代码,如有疑问请留言。

	import java.util.Scanner;
	import java.util.Random;
	
	public class Main {  
		public static void main(String[] args) {
			Scanner scanner = new Scanner(System.in); // 创建Scanner对象
			System.out.println("   剪刀为1,石头为2,布为3"); // 打印提示
			System.out.println("   ");
			System.out.print("     请输入您的选择:");
			int choice = scanner.nextInt();       
			Random random = new Random();  //创建一个Random对象      
			int rand_num = random.nextInt(1, 4);//产生一个1~4的随机数,不包括4  
			
			String opt = switch (choice) {
			//三元运算b ? x : y会首先计算b,如果b为true,则只计算x,否则,只计算y
			case 1 -> rand_num == 1 ? "平局" : (rand_num == 2 ? "你输了!" : "你胜了!");            
			case 2 -> rand_num == 2 ? "平局" : (rand_num == 3 ? "你输了!" : "你胜了!");            
			case 3 -> rand_num == 3 ? "平局" : (rand_num == 1 ? "你输了!" : "你胜了!");            
			default -> "输入异常";        }; 
			
			System.out.println(  "          ");
			System.out.println(  "      结果:"+opt); 
			
		}
	}

;