3 回答
TA贡献1780条经验 获得超5个赞
** 错误:(15, 32) java:com.company.Main 类中的方法 sum 不能应用于给定类型;
要求:int[]
发现:没有参数
原因:实际和形式参数列表的长度不同
通过错误本身说明了有关问题的一切:
要求:int[]
发现:没有参数
据说它需要一个数据类型为 int 的数组,该数组缺少(无参数),这就是实际参数列表和形式参数列表长度不同的原因
因此,Sum 函数需要一个数组作为参数传递。
此外,您在整数变量j = rand.nextInt(50);中获得随机整数值;但没有将它分配给数组,这只是浪费循环不必要地运行 10 次。
我们可以直接将它分配给数组并在将其传递给方法sum(array)之前用随机整数填充数组,而不是将其分配给 j :
尝试使用需要更改的更新代码:
package com.company;
import java.util.Random;
public class Main {
public static int sum(int[] array) {
int x = array[0];
int y = array[9];
int z = x + y;
return z;
}
public static void main(String[] args) {
int[] array = new int[10];
Random rand = new Random();
for (int i = 0; i < array.length; i++) {
array[i] = rand.nextInt(50);
}
System.out.println(sum(array));
}
}
TA贡献1772条经验 获得超8个赞
你应该初始化array用random(),然后把array作为参数调用sum()函数。代码如下:
public static void main(String[] args) {
int[] array = new int[10];
Random rand = new Random();
for (int i = 0; i < array.length; i++) {
int j = rand.nextInt(50);
array[i] = j;
}
System.out.println(sum(array));
}
然后,你就可以得到你想要的结果。
TA贡献1786条经验 获得超13个赞
您没有将数组传递给方法。改变你的线路
System.out.println(sum());
到
System.out.println(sum(array));
你也没有把j
到array
你打电话之前和array
填充。
添加回答
举报