Мне поручено создать метод, который взял бы два списка и определил, какие целые числа в списках являются общими. Я решил использовать списки ArrayLists, потому что они изменяемые, и вложенный для l oop, чтобы перебирать два списка для определения общих целых чисел. Я не был уверен, могут ли ArrayLists быть типами, возвращаемыми для методов, поэтому я решил попробовать сделать ArrayList обычным массивом, но получил исключение java .lang со следующим кодом. Как исправить?
import java.util.*;
import java.util.ArrayList;
public class Lab1InJava{
public static void main(String [] args){
ArrayList<Integer> listUno = new ArrayList<Integer>();
listUno.add(4);
listUno.add(3);
listUno.add(2);
listUno.add(1);
ArrayList<Integer> listDos = new ArrayList<Integer>();
listDos.add(4);
listDos.add(3);
listDos.add(2);
listDos.add(1);
System.out.println(inCommon(listUno, listDos));
}
public static Object[] inCommon(ArrayList<Integer> list1, ArrayList<Integer> list2){
Collections.sort(list1);
Collections.sort(list2);
ArrayList<Integer> newList3 = new ArrayList<Integer>();
for (int indexOne = 0; indexOne<list1.size(); indexOne++)
for(int indexTwo = 0; indexTwo<list2.size(); indexTwo++)
if (list1.get(indexOne) == list2.get(indexTwo))
newList3.add(list1.get(indexOne));
Object[] newArray = newList3.toArray();
for(Object o : newArray) {
String s = (String) o;
System.out.println(o);
}
return newArray;
}
}