Im pracy z następującym sposobem:typu Array oczekiwano [Błąd kompilacji]
public void m(List<? extends Object[]> objs){
objs.stream()
.map(oa -> oa[0]) //compile error
//array type expected
.forEach(System.out::println);
}
Dlaczego to nie działa? Myślałem, że wszystko, co poszerza tablicę, może być postrzegane jako tablica. Właściwie mogę uzyskać length
z tablicy.
Downvoter, byłbyś tak miły i wyjaśnić w komentarzach, dlaczego to nie działa? Dlaczego muszę rzucić bezpośrednio na "Object []'? –
Jeśli zmienisz 'm (List Extends Object []> objs)' na 'm (List
@StephenP Niespodziewanie nie mogę zmienić podpisu. –