[英]How to add an element to arrayList when calling the method at the same time?
我正在做一個遞歸程序,我想連續兩次調用一個方法,如下所示:
print(ArrayList<Integer> current + arr[0], Arrays.copyOfRange(arr, 1, arr.length) );
print(ArrayList<Integer> current, Arrays.copyOfRange(arr, 1, arr.length));
但是不可能像這樣向ArrayList添加值。 但是,我也不能在外面使用current.add(),因為它會弄亂我的第二個電話。 那么有沒有一種方法可以在調用方法時向arrayList添加值,還是我必須考慮另一種方式來編寫代碼?
您可以像下面這樣重載打印方法:
public void print(ArrayList<Integer> current, int i, int[] arr ) {
//print whatever you want
//then add using current.add(i)
current.add(i)
}
然后像這樣第一次調用重載的print()
方法:
print(current, arr[0], arr);
您可以使用以下代碼來實現
print(new ArrayList<Integer>(current) {{ add(arr[0]); }},
Arrays.copyOfRange(arr, 1, arr.length) );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.