java - 在静态方法中创建新的随机数

标签 java gridworld

我正在尝试在网格世界中制作一个简单的游戏,你的船穿过和星带。小行星带每次生成时都应该有一个空白区域。我有一个名为 nextAsteroidField() 的方法,它创建了这个腰带,我的实现是这样的

public static void nextAsteroidField()
{
    int randNum = (int)(Math.random()*15)+1;
    for(int i = 1; i < 16; i++)
    {
        if(i == randNum)
        {
        }
        else
            world.add(new Location(0, i), new Asteroid());
    }
}

该方法必须是静态的,因为当创建第一个小行星带时,它是从类的主函数中调用的。

第一次调用此方法时,它会按预期创建空间。每当前一行小行星落入网格底部时,我都会调用此方法。第二次和以后的每一次都没有间隙。

最佳答案

尝试使用 Random 类:

import java.util.Random;

public class Main{

static Random rnd = new Random();

public static void main( String[] args ){
    int randNum = rnd.nextInt( 16 )+1;
    for( int i = 0; i < 16; i++ )
        if( i != randNum )
            System.out.print("*");
        else
            System.out.print(" ");
    }
}

关于java - 在静态方法中创建新的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16751862/

相关文章:

Java重叠日期

java - 使用ArrayList(或更好的链接列表)编写自己的队列在技术上是否正确?[下面的java代码]

java - 找不到 getColor() 方法?国际象棋游戏帮助 Java

java - GridWorld 实验室问题

java - Android 写入 CSV RAM 问题

java - 寻找朝拜方向的通用逻辑

java - 网格世界帮助将小动物移动到空位

java - 找不到符号符号: method process(WorkerAnt)

java - 如何在 Java 中处理命令行参数

javascript - 编程基于坐标的游戏,例如点或跳棋