У меня есть arraylist A типа Integer. Я создал его как:
ArrayList<Integer> A = new ArrayList<Integer>();
Теперь я хочу передать его как аргумент функции AnalyseArray()
.
Как я могу это достичь?
У меня есть arraylist A типа Integer. Я создал его как:
ArrayList<Integer> A = new ArrayList<Integer>();
Теперь я хочу передать его как аргумент функции AnalyseArray()
.
Как я могу это достичь?
public void AnalyseArray(ArrayList<Integer> array) {
// Do something
}
...
ArrayList<Integer> A = new ArrayList<Integer>();
AnalyseArray(A);
Ответ уже отправлен, но обратите внимание, что это передаст ArrayList по ссылке. Поэтому, если вы внесете какие-либо изменения в список в функции, он также будет затронут и в исходном списке.
<access-modfier> <returnType> AnalyseArray(ArrayList<Integer> list)
{
//analyse the list
//return value
}
назовите его следующим образом:
x=AnalyseArray(list);
или передать копию ArrayList:
x=AnalyseArray(list.clone());
Определите его как
<return type> AnalyzeArray(ArrayList<Integer> list) {
Это зависит от того, как и где вы объявили список массивов. Если это переменная экземпляра в том же классе, что и ваш метод AnalyseArray(), вам не нужно передавать его. Метод будет знать список, и вы можете просто использовать A в любой цели, которая вам нужна.
Если они не знают друг друга, например, если вы используете локальную переменную или объявлены в другом классе, определите, что вашему методу AnalyseArray() нужен параметр ArrayList
public void AnalyseArray(ArrayList<Integer> theList){}
а затем работать с этим списком внутри этого метода. Но не забудьте на самом деле передать его при вызове метода. AnalyseArray(A);
PS: Некоторые могут быть полезны Информация для Переменные и parameters.