【问题标题】:Java Text based game基于 Java 文本的游戏
【发布时间】:2021-06-25 23:44:43
【问题描述】:
import java.util.Random;
import java.util.Scanner;


public class TextGame {
    public static void main(String[]args){
        //System objects
        Scanner userinput = new Scanner(System.in);
        Random Randy = new Random();

        // Enemy variables
        String[]enemies = {"Die-pods", "Cammera-man","backdropdrone","Softbox-er",};    //level 1 enemies

        if(Randy.equals("Die-pods")){
            int DiePodsHealth = 10;
            int DiePodsAttack = 20;
            int diepodsdefense = 2;
        }else if (Randy.equals("Cammera-man")){
            int CammeraManHealth = 30;
            int CammeraManAttack = 10;
            int CammeraManDefense = 5;
        }else if (Randy.equals("backdropdrone")){
            int BackDropDroneHealth = 15;
            int BackDropDroneAttack = 15;
            int BackDropDroneDefense = 1;
        }else if (Randy.equals("Softbox-er")){
            int SoftBoxersHealth = 25;
            int SoftBoxersAttack = 10;
            int SoftBoxersDefense = 5;
        }

        // Player Variables
        int Health = 100;
        int baseAttack = 20;
        int defense = 5;

        boolean running = true;
        System.out.print("Welcome to my base of operations - MR.Shutter");
        GAME:
            while(running){
                int Enemies = Randy.nextInt(enemies.length);
                System.out.println(enemies + "has appeared!");
            }
    }
}

我想让计算机随机选择一个怪物并显示在控制台中。但是,它在不可转换类型“随机”和“字符串”的对象之间给了我很多“相等”。我将如何解决这个问题。

【问题讨论】:

  • 请编辑问题并显示完整的错误信息,并指出哪些代码行
  • Java 是一种面向对象的编程语言。 Randy 是一个Random 对象,字符串是String 对象。您无法将 Random 对象与 String 对象进行比较。

标签: java


【解决方案1】:

我认为你应该使用从敌人数组中选择一个随机索引来有效地选择一个随机敌人。

你可以用下面一行来选择一个随机索引

int randIndex = Randy.nextInt(enemies.length);

【讨论】:

    【解决方案2】:

    因此,正如我在另一个已回答的问题中看到的那样,您可以尝试的一件事是使用 Random.nextInt(int) 方法,如本答案所示,您可以使用此解决方案的格式:

    https://stackoverflow.com/a/21726085/15146457

    并在执行时再试一次,看看它是否返回更令人满意的输出。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-10
      • 2013-07-08
      • 2015-09-10
      • 2023-01-08
      • 1970-01-01
      • 2012-05-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多