java - 是否有可能声明 4 个选项而 Java 必须随机选择 1 个?

标签 java

我正在制作一款坦克游戏。我希望我的敌人像这样从面板的一侧随机发射:

scherm 表示屏幕/面板
breedte 表示宽度
hoogte 表示高度

public void launch() 
{
    //from upside
    x_pos = rand.nextInt(Tanks.getSchermBreedte());
    y_pos =  0;

    //leftside
    x_pos = 0;
    y_pos = rand.nextInt(Tanks.getSchermHoogte());

    //lower side
    x_pos = rand.nextInt(Tanks.getSchermBreedte());
    y_pos = Tanks.getSchermHoogte();

    //right
    x_pos = Tanks.getSchermBreedte();
    y_pos = rand.nextInt(Tanks.getSchermHoogte());

}

我希望 Java 从这些选项中选择一个,但我真的不知道该怎么做。

最佳答案

使用 java.util.Random.nextInt(4) 为您提供从 0 到 3 的随机数。然后使用 switch 语句选择您的选项之一。

public void launch() {
      int random = java.util.Random.nextInt(3);

      switch (random) {
        case 0:
            //from upside
            x_pos = rand.nextInt(Tanks.getSchermBreedte());
            y_pos =  0;
        break;
        case 1: 
          //leftside
          x_pos = 0;
          y_pos = rand.nextInt(Tanks.getSchermHoogte());
        break;
        case 2:
            //lower side
            x_pos = rand.nextInt(Tanks.getSchermBreedte());
            y_pos = Tanks.getSchermHoogte();
        break;
        case 3:
            //right
            x_pos = Tanks.getSchermBreedte();
            y_pos = rand.nextInt(Tanks.getSchermHoogte());
        break;
      }
}

关于java - 是否有可能声明 4 个选项而 Java 必须随机选择 1 个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30163782/

相关文章:

java - Android 应用程序无法在模拟器中运行

java - 将输出和错误消息打印到控制台

Java 多个拖放面板不起作用

java - 无法从 Elastic Beanstalk 上的 Java 应用程序连接到 MySQL Amazon RDS,java.sql.SQLException : No suitable driver

java - 扫描仪无法关闭

java - Java (Linux) 中的文件路径

java - 如何将文本颜色设置为 TextArea 中的特定字符串?

java - 如何修复 SpringApplication 上的 NoClassDefFoundError (Pivotal)

java - Json - JSONArray 无法转换为 JSONObject

java - "instanceof"与 assertEquals 的 assertTrue