[英]How to Pass an ArrayList to a Method in Java?
我試圖在運行時傳遞一個特定的 ArrayList 作為參數(我使用的是 BlueJ)。 但是當我將 {5, 2, 9, 1, 7, 4, 6, 3, 8} 傳遞到我的方法中時,我收到一個錯誤:“非法初始化 java.util.List”。
這是到目前為止我的代碼的要點:
public static List<Integer> method(List<Integer> items)
{
List<Integer> list = new ArrayList<Integer>();
int first = items.get(0);
list.add(first);
return list;
}
您需要通過傳遞List
的實例(當然是子類)來調用您的方法,如下所示:
method(Arrays.asList(5, 2, 9, 1, 7, 4, 6, 3, 8));
method(List.of(5, 2, 9, 1, 7, 4, 6, 3, 8));
您的代碼{ 5, 2, 9, 1, 7, 4, 6, 3, 8 }
創建了一個數組(參見教程)。 但是您的方法不采用數組。 您的方法聲明它接受一個ArrayList
類型的對象,一個來自Java Collections Framework 的類。 ArrayList
類恰好在內部使用數組,但本身不是數組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.