用于链表分配的随机数生成器方法

时间:2012-04-06 04:44:28

标签: java arrays random generator

所以,我必须制作一个随机数生成器,以获得0到400之间的数字。我将这些数据放入一个数组中,然后再对它们进行排序。我只是不确定如何去做这件事。我被赋予了一些东西;

public int nextInt(400) //gives me errors
{
    random.setSeed(12345L);
    for (int i = 0; i < arr.size; i++)
    {
         val = random.nextInt(400);
         a[i] = val;
    }
}

我已经调用了随机类,因为方向表明了这一点。我只是不知道为什么这不起作用。它给了我错误,尤其是第一部分; class,interface或enum expected。请问有人引导我走向正确的方向吗?

3 个答案:

答案 0 :(得分:2)

Java中的函数(所有编程语言)在其定义中都有“变量”。

你有:

public int nextInt(400)

在这里,您希望400是传递给函数的值。

将此视为数学。我确定你已经处理过像f(x) = 2 * x这样的事情了。这里,x是变量,你用x的值“评估”f(x)。同样,在编程中,我们有类似的东西:

public int nextInt(int x)

如您所见,我们的函数将x定义为int类型。这在Java之类的语言中是必要的,因为你告诉编译器这个函数只接受x的整数。

既然你已经这样做了,你可以在函数体中使用x作为变量。

请注意,无论何时使用变量,首先必须定义变量。一行如:

int variable;

将变量定义为int。

您的计划遗失了randomvalarra。请注意arra是数组(不知怎的,我觉得它们不应该是两个独立的变量)。

在尝试这个问题之前,你应该真正了解变量定义,数组和函数。您最好的资源将是您的教科书,因为它将以有组织的,循序渐进的方式解释所有内容。您还可以尝试在线提供的许多教程。如果您有特定问题,可以随时回到StackOverflow,我相信您会在这里找到帮助。

祝你好运!

答案 1 :(得分:0)

您需要在类定义

中定义此函数

答案 2 :(得分:0)

即使您已指定:

public int nextInt(400)

在这个行函数中返回 int ,在你的整个身体中你没有任何return语句。

并且是的,因为Kshitij Mehata建议不要直接使用400作为值使用变量。

这应该是你的功能:

public int[] nextInt(int x) //gives me errors
    {
        random.setSeed(12345L);
        int[] a=new int[arr.size];
        for (int i = 0; i < arr.size; i++)
        {
             val = random.nextInt(400);
             a[i] = val;
        }
        return a;
    }

即使这个 arr 来自 arr 也存在问题?