Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 数组和静态方法_Java_Arrays_Static Methods - Fatal编程技术网

Java 数组和静态方法

Java 数组和静态方法,java,arrays,static-methods,Java,Arrays,Static Methods,我有一个关于如何调用数组静态方法的问题。在我的例子中,我相信我的数组静态方法是好的,因为编译器不会抱怨它,但当我调用它时它会抱怨,它说,double不能转换为double[]如何解决这个问题?任何帮助都将不胜感激。下面是我的代码片段: // create allowed x values for calculation static method public static double[] allowedValuesX(double[] x, double[] y, int choice){

我有一个关于如何调用数组静态方法的问题。在我的例子中,我相信我的数组静态方法是好的,因为编译器不会抱怨它,但当我调用它时它会抱怨,它说,
double不能转换为double[]
如何解决这个问题?任何帮助都将不胜感激。下面是我的代码片段:

// create allowed x values for calculation static method
public static double[] allowedValuesX(double[] x, double[] y, int choice){
    double allowedVx[] = new double[choice];
    int i = 0;
    for(i = 0; i < allowedVx.length; i++){
        if((Math.pow(x[i], 2) + (Math.pow(y[i], 2))) <= 1){
            allowedVx[i] = x[i];
        }
    }
    return allowedVx;
}
// main method
public static void main(String args[]){
// create Scanner object
    Scanner in = new Scanner(System.in);

    // call to promptUser
    promptUser();

    // create variable for recieving user input
    int choice = in.nextInt();

    double x[] = new double[choice];
    int i = 0;
    for(i = 0; i < x.length; i++){
        x[i] = Math.random();
    }
// call to allowed x values
    allowedValuesX(x[i], y[j], choice);
//为计算静态方法创建允许的x值
公共静态双[]允许值x(双[]x,双[]y,整数选择){
双允许vx[]=新双[选择];
int i=0;
对于(i=0;i如果((Math.pow(x[i],2)+(Math.pow(y[i],2))调用
allowedValuesX时传递特定数组元素

allowedValuesX(x[i], y[j], choice);
但您应该传递数组本身,以匹配方法的参数类型:

allowedValuesX(x, y, choice);

调用
allowedValuesX
时,您正在传递特定的数组元素:

allowedValuesX(x[i], y[j], choice);
但您应该传递数组本身,以匹配方法的参数类型:

allowedValuesX(x, y, choice);

调用
allowedValuesX
时,您正在传递特定的数组元素:

allowedValuesX(x[i], y[j], choice);
但您应该传递数组本身,以匹配方法的参数类型:

allowedValuesX(x, y, choice);

调用
allowedValuesX
时,您正在传递特定的数组元素:

allowedValuesX(x[i], y[j], choice);
但您应该传递数组本身,以匹配方法的参数类型:

allowedValuesX(x, y, choice);
allowedValuesX(x[i],y[j],choice);
vs
double[]x,double[]y,int choice
。你看到区别了吗?你的签名需要一个数组,但你用数组中的一个值来调用它(又称为:单
double
)。
allowedValuesX(x[i],y[j],choice);
vs
vs
double[]x,double[]y,int choice
。您看到区别了吗?您的签名需要一个数组,但您使用数组中的单个值调用它(也称为:一个单
double
)。
允许值x(x[i],y[j],choice);
vs
double[]x,double[]y,int choice
。您看到区别了吗?您的签名需要一个数组,但您使用数组中的单个值调用它(也称为:一个单
double
)。
允许值x(x[i],y[j],choice);
vs
double[]x,double[]y,int choice
。您看到区别了吗?您的签名需要一个数组,但您使用数组中的单个值调用它(也称为:单个
)。