我是编码和尝试调用我在单独的类中编写和定义的方法(RandomArray)的新手,但是在我的驱动程序代码中,我收到以下错误消息:


  找不到符号-RandomArray()。


代码应创建一个数组(大小由用户选择),然后用随机数填充它,并输出所述数组中数字的最高,最低和平均值。

所有拼写都匹配,并且调用本身可以正常工作并且不显示任何错误,但是在for循环中使用它时,我得到了错误消息。

这是我创建方法的类:

import java.util.Random;
public class RandomArray
{
    //things declared at class level
    public int minimun,maximun,adverage, mn, mx, avg;
    public String range;

    //constucotr for inital numbers
    public RandomArray()
    {
        minimun = 0;
        maximun = 1000 + 1;
    }


static int RandomArray()
{
    Random ran = new Random();
    return (ran.nextInt(1000) + 1);
}

//define types
public RandomArray (int mn, int mx, String r, int a)
{
    minimun = mn;
    maximun = mx;
    range = r;
    adverage =  a;
}

//set minimun
public void setMinimun (int m)
{
    minimun = mn;
}

//get minimun
public int getMinimun()
{
    return minimun;

}

//set maximun
public void setMaximun(int x)
{
    maximun = mx;
}
//get maximun
public int getMaximun()
{
    return maximun;
}

//compute adverage
public int adverage(int...array)
{
   int adverage = 0;
   if (array.length > 0)
   {
       int sum = 0;
       for(int num : array)
            sum = sum + num; //add numbers in array
       adverage = (int)sum / array.length; //divide numbers in array by the array lenth

    }

   return adverage;
}

//return values as a string
public String toString()
{

    return String.valueOf(getMinimun() + getMaximun() + adverage());

}
}


这是应该用随机数填充(用户选择)数组并打印最高,最低和平均值的驱动程序:

import java.util.Random;
import java.util.Scanner;
import java.util.Arrays;
public class DemoRandomArray
{
    // variable go here
    final int minimun = 0;


    public static void main(String[] args)
    {
        final int max = 100;

        RandomArray ra = new RandomArray();

        int[] anArray = new int[1000];


        for(int i=1; i < max; i++)
        {
           System.out.println(RandomArray());
        }

    }


}

最佳答案

该方法在另一个类中,因此您需要使用类名。

RandomArray.RandomArray()而不只是RandomArray()

08-18 11:30