- Вы вызываете функцию из общего состояния c. Таким образом, это должно быть stati c или создание объекта класса.
- Вы вынуждены сделать это из-за этой строки в вашем коде
List<T> returnedList = new ArrayList<T>();
, так как вы задаете здесь тип generi c. Обобщения не оцениваются во время выполнения. - Вы можете сделать что-то вроде этого,
public static void main(String[] args) {
// Create a list and add some colors to the list
List<String> list_Strings = new ArrayList<>();
List<String> list_Strings2 = new ArrayList<>();
list_Strings.add("Red");
list_Strings2.add("yellow");
List<String> returnedList = combineArrayList(list_Strings, list_Strings2);
// Print the list
System.out.println(returnedList);
}
Компилятор не знает, что будет возвращено вашей функцией
combineArrayList()
, и вы хотите присвоить его
List<T>
.