Dodajesz elementy do listy newList2
, a nie do newList
. Nie wiemy jakiego typy elementy przyjmuje lista newList2
.
Literówka w kodzie, wszędzie jest newList bez 2
Cześć,
Proste pytanie, dlaczego poniższy kod nie zadziała? A dokładniej czemu metoda addAll()
nie pozwala mi dodać zmiennej numbers do newList skoro typy są identyczne?
Nie możesz tego zrobić, bo to mogłoby doprowadzić do naruszenia typów generycznych
List<? extends Number> listOfDoubles = new ArrayList<Double>();
List<? extends Number> listOfIntegers = new ArrayList<Integer>();
listOfDoubles.addAll(listOfIntegers);
Gdyby udało Ci się dodać listOfDoubles
do listOfIntegers
to miałbyś listę List<Integer>
w której jest Double
.
Mega odpowiedź, dziękuję bardzo! Dopiero wchodze w Jave i wydawało się to dla mnie zagadkowe