[英]How to create a method with 2 arrays as parameters?
如何將 2 個預定義數組作為參數傳遞給方法,這是我嘗試過的代碼:
public class MergeArrays {
public int array1[] = new int[5];
public int array2[] = new int[5];
private int[] mergeArray(array1,array2){
}
}
要回答您的特定問題“如何將2個預定義數組作為參數傳遞給方法”,您需要在方法中指定參數的類型:
private int[] mergeArray(int[] array1, int[] array2)
然后,您可以使用以下命令調用它:
mergeArray(array1, array2);
一個更大的例子:
public class MergeArrays {
public int array1[] = new int[5];
public int array2[] = new int[5];
private int[] mergeArray(int[] array1, int[] array2) {
// TODO
}
public static void main(String... args) {
MergeArrays merger = new MergeArrays();
merger.array1[0] = 18;
merger.array1[1] = 28;
merger.array2[0] = 991;
// etc.
int[] mergedArray = merger.mergeArray(array1, array2);
// TODO
}
}
值得一提的是,這不是很棒的代碼。
方法中的參數名稱與實例變量的名稱沖突(並隱藏)。 這可能會造成混淆,如果您要從方法中訪問實例變量,則必須為此添加前綴this.
通常,在面向對象的程序中,您希望隱藏內部數據表示形式(例如數組),而不是將其公開。 例如,也許以后您將要改用ArrayList
。 如果將字段公開,則其他類可能會引用它們,因此更改將在代碼庫中引起連鎖反應。
您的mergeArray
方法最好命名為merge
或mergeArrays
(復數),並且應該是static
除非它依賴於類的內部狀態。
回答:
句法 :
modifier return-type nameOfMethod (type_of_array
array_name[],type_of_array array_name[])
{
// method body
}
例:
public void TakeArray(int[] a, int[] b) {
}
句法:
nameOfMethod (name_of_Predefined_array);
例:
int array1[] = { 1, 2, 1, 1, 1, 1, 2 };
int array2[] = { 1, 2, 1, 1, 1, 1, 2 };
TakeArray(array1, array2);
工作代碼示例:
public class Consecutive {
public static void TakeArray(int[] a, int[] b) { // define a function to
// take 2 array as input
System.out.println("Array 1 :");
for (int i : a)
// printing value of array 1
System.out.println(i);
System.out.println("Array 2 :");
for (int i : b)
// printing value of array 1
System.out.println(i);
}
public static void main(String[] args) {
int array1[] = { 1, 2, 1, 1, 1, 1, 2 }; // creating an array
int array2[] = { 1, 2, 1, 1, 1, 1, 2 };// creating another array
TakeArray(array1, array2); // passing both array to function as
// arguments
}
}
檢查代碼中注釋中的解釋。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.