我目前正在嘗試在陣列中查找三個的所有多個值。我知道不使用方法很熱,但是當我嘗試呼叫該方法并檢索回傳的陣列時,它會給我錯誤并且不起作用。
public class Scratchpad extends ConsoleProgram
{
public void run()
{
int[] test = {4, 7, 9, 7, 12};
findMultipleOfThree testArr = new findMultipleOfThree[int[] test];
System.out.println(testArr);
}
// Copy and paste your Unit Test method here
public int findMultipleOfThree(int[] arr)
{
int length = arr.length;
int[] result = new int[length];
for(int i = 0; i < arr.length; i )
{
if(arr[i] % 3 == 0)
{
result[i] = arr[I];
}
}
return result;
}
}
uj5u.com熱心網友回復:
您的代碼中存在一些問題。我認為在您對該run方法的第二條指令中,您試圖呼叫findMultipleOfThree您在下面定義的方法。
要呼叫一個方法,您只需鍵入它的名稱并傳遞它所期望的引數。在您的情況下,該test陣列用于查找可被 3 整除的元素。另外,您還需要宣告第二個陣列result,以便存盤從您的方法回傳的陣列,其中僅包含可被 3 整除的元素。
最終,在您的findMultipleOfThree方法中,您將i變數稱為I. Java 區分大小寫,因此它區分大小寫字母。
我想這就是你想要寫的。
public class Scratchpad extends ConsoleProgram {
public void run() {
int[] test = {4, 7, 9, 7, 12};
int[] result = findMultipleOfThree(test);
System.out.println(Arrays.toString(result));
}
public static int[] findMultipleOfThree(int[] arr) {
int length = arr.length;
int[] result = new int[length];
for (int i = 0; i < arr.length; i ) {
if (arr[i] % 3 == 0) {
result[i] = arr[i];
}
}
return result;
}
}
uj5u.com熱心網友回復:
看起來您正在混淆方法和類。您不能宣告方法的實體,它們也不是可用于變數型別的型別。如果您想呼叫該方法,您需要使用類似int result = findMultipleOfThree(test);的東西并列印結果,System.out.println(result);
希望這會有所幫助!
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/476751.html
