将多个参数发送到方法,并返回值Java

时间:2014-10-16 15:23:36

标签: java methods parameters return

我是编程新手。我遇到了这个问题:

“编写一个程序,它将填充三个数组a,b和c,所有长度为8,伪随机整数在2到10之间,包括2但不包括10,并设置第四个数组的数组元素,d ,长度为8,对应于a,b和c的对应元素的总和,并输出如下所示的所有四个数组。注意在main中生成的三个数组(a,b和c)并传递给非添加相应元素以确定sum数组(d)并将sum数组(d)返回main的主要方法。所有四个数组从main输出。“

到目前为止,使用随机元素创建数组a,b和c没有问题。但是我不知道如何在main之外创建d(如何发送多个参数,如何将值返回main)。请帮忙!

我试过这样的事情:

这有什么问题?:

public static void main(String args[]){
//generated arrays a, b, c
        d[] = assemble (a, b, c);
    }
    public assemble (int a, int b, int c){
            int d = a + b + c;
            return;
    }
}

2 个答案:

答案 0 :(得分:0)

一些伪代码:

function main{
    // stuff going on
    array result;
    result = assemble (a, b c);
}

function array assemble (array a, array b, array c){
    // do something with the arrays
    // assing result to d
    return array d
}

在main中调用汇编并使其返回结果数组。将返回的数组分配给变量以存储结果。

在此之后,你将在main中提供所有4个数组(数组d存储在你创建的变量中),你可以打印出所有这些数组或者你需要用它们做任何其他事情。

Java示例:Passing arguments and returning result

修改了你的代码:

public static void main(String args[]){
    //generated arrays a, b, c
        int[] d = assemble(a, b, c);
}
    public int[] assemble(int[] a, int[] b, int[] c){
            int[] result;
            // do something with a b c and assign it result to result[]
            return result;
    }
}

答案 1 :(得分:0)

第一个问题(伪随机数生成):Math.random() explained

问题的第二部分:遍历数组(循环)以添加每个伪随机整数值并将结果存储在相应的索引位置:d [i] = a [i] + b [i] + c [i ]

由于您的要求是使所有数组具有相同的长度,我可能会创建一个常量整数MAX_SIZE并将其设置为8.当您声明四个数组时,我会使用此常量来指定大小(即int [] a = new int [8])。

指令"并输出所有四个数组,如下所示"我不清楚。我不知道'下面'意味着在这种情况下。但是,我假设在为每个值进行赋值时,可以使用System.out将每个值输出到屏幕。

"我不知道如何在主体之外创建d。"你的阵列' d'是存储在a,b和c中的值的总和。您的代码是错误的,因为您将整数值(不是整数数组)传递给方法并返回一个整数并尝试将其分配给一个数组(这些数组是不兼容的数据类型)。你的汇编方法应该将整数数组作为参数(a,b,c)并返回一个整数数组(d)。在此方法中,您必须遍历要传递的数组,获取每个索引位置中的值,并将总和分配给“' d”上的相应索引。添加完所有值后,您将返回该数组。这很简单。我不确定困难是什么。如果你可以在' main'内进行,你也可以在它之外进行。