21xrx.com
2024-12-22 23:58:18 Sunday
登录
文章检索 我的文章 写文章
Java编程:猜拳小游戏经典源代码
2023-06-15 10:01:16 深夜i     --     --
Java编程 猜拳小游戏 游戏规则

猜拳小游戏是我们小时候的经典游戏,现在我们可以利用Java编程语言来实现它。下面是源代码的详细解释:

1. 准备工作

在开始写代码之前,我们需要在电脑上安装Java SDK,并在编辑器中新建一个Java文件来编写代码。在代码编写之前,我们需要准备好以下对象:

- Scanner对象:用于读取用户输入。

- Random对象:用于生成随机数。

- int类型的变量winCount、loseCount、tieCount:用于记录用户胜、负、平的次数。

- String类型的变量computerChoice、playerChoice:用于记录电脑和玩家的出拳结果。

2. 实现游戏规则

在猜拳小游戏中,玩家需要输入1-3的数字来选择出拳的方式,而电脑则需要随机产生1-3的数字来表示出拳方式。我们需要通过编写代码来判断用户和电脑的出拳结果,并计算出胜负和平的次数。

具体来说,我们需要实现一个游戏规则函数,用于根据玩家和电脑的出拳结果计算胜、负、平的次数。代码如下:

public static void playGame(int playerChoice, int computerChoice) {

 String[] actions = "石头";

 System.out.println("你出了 " + actions[playerChoice - 1] + ", 电脑出了 " + actions[computerChoice - 1]);

 if (playerChoice == computerChoice) {

  System.out.println("平局");

  tieCount++;

 } else if (playerChoice == 1 && computerChoice == 2 ||

       playerChoice == 2 && computerChoice == 3 ||

       playerChoice == 3 && computerChoice == 1) {

  System.out.println("你赢了");

  winCount++;

 } else {

  System.out.println("你输了");

  loseCount++;

 }

}

在以上代码中,我们使用了一个String数组来存储出拳的方式,然后根据玩家和电脑出拳的数字来在数组中获取对应的中文名称。接着,我们对玩家和电脑出拳结果进行判断,判断胜利、失败或平局,并记录相应的次数。

3. 程序入口和输出

最后,我们需要在程序的入口处实现一个循环,每次循环中让玩家输入选择出拳方式的数字,并调用游戏规则函数来计算结果。循环结束后,我们可以输出最终的胜、负、平次数。代码如下:

public static void main(String[] args) {

 Scanner scanner = new Scanner(System.in);

 Random random = new Random();

 while (true) {

  System.out.println("请输入你的选择(1-石头,2-剪刀,3-布):");

  int playerChoice = scanner.nextInt();

  int computerChoice = random.nextInt(3) + 1;

  playGame(playerChoice, computerChoice);

  System.out.println("游戏结果:");

  System.out.println("你赢了 " + winCount + " 次");

  System.out.println("你输了 " + loseCount + " 次");

  System.out.println("平局 " + tieCount + " 次");

  System.out.println("是否继续游戏?(输入y继续,其他键退出)");

   String continueGame = scanner.next();

   if (!continueGame.equals("y"))

    break;

 }

}

在以上代码中,我们使用了一个while循环来不断等待玩家输入出拳方式,并进行游戏规则计算。每次循环结束后,根据用户的输入来决定是否继续游戏。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复