3 回答

TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊
** 錯(cuò)誤:(15, 32) java:com.company.Main 類中的方法 sum 不能應(yīng)用于給定類型;
要求:int[]
發(fā)現(xiàn):沒有參數(shù)
原因:實(shí)際和形式參數(shù)列表的長(zhǎng)度不同
通過錯(cuò)誤本身說明了有關(guān)問題的一切:
要求:int[]
發(fā)現(xiàn):沒有參數(shù)
據(jù)說它需要一個(gè)數(shù)據(jù)類型為 int 的數(shù)組,該數(shù)組缺少(無參數(shù)),這就是實(shí)際參數(shù)列表和形式參數(shù)列表長(zhǎng)度不同的原因
因此,Sum 函數(shù)需要一個(gè)數(shù)組作為參數(shù)傳遞。
此外,您在整數(shù)變量j = rand.nextInt(50);中獲得隨機(jī)整數(shù)值;但沒有將它分配給數(shù)組,這只是浪費(fèi)循環(huán)不必要地運(yùn)行 10 次。
我們可以直接將它分配給數(shù)組并在將其傳遞給方法sum(array)之前用隨機(jī)整數(shù)填充數(shù)組,而不是將其分配給 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貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超8個(gè)贊
你應(yīng)該初始化array用random(),然后把a(bǔ)rray作為參數(shù)調(diào)用sum()函數(shù)。代碼如下:
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));
}
然后,你就可以得到你想要的結(jié)果。

TA貢獻(xiàn)1786條經(jīng)驗(yàn) 獲得超13個(gè)贊
您沒有將數(shù)組傳遞給方法。改變你的線路
System.out.println(sum());
到
System.out.println(sum(array));
你也沒有把j
到array
你打電話之前和array
填充。
添加回答
舉報(bào)