数组和静态方法java

时间:2013-12-13 00:04:25

标签: java arrays static-methods

我有一个关于如何调用数组静态方法的问题。在我的情况下,我相信我的数组静态方法很好,因为编译器没有抱怨它,但是当我调用它时它会这样做,它说double cannot be converted to 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);

1 个答案:

答案 0 :(得分:3)

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

allowedValuesX(x[i], y[j], choice);

但是你应该自己传递数组,以匹配方法的参数类型:

allowedValuesX(x, y, choice);