Porównywanie rozmiarów dwóch list o różnych typach

0

Witajcie!

Chciałbym napisać funkcję, która w parametrach przyjmuje dwie listy o różnych typach. Następnie zwraca ich rozmiary. Więc napisałem:

    public boolean compareSizes(List<Object> list1, List<Object> list2) {
        return list1.size() == list2.size();
    } 

Po utworzeniu następujących list:

    List<Product> list1 = new ArrayList<Product>();
    List<String> list2 = new ArrayList<String>();

I wywołaniu funkcji w następujący sposób:

compareSizes(list1,list2)

Otrzymuje błąd następującej treści:
The method compareSizes(List<object>, List<object>) in the type Log is not applicable for the arguments (List<string>, List<product>)

Jak to naprawić i czy to w ogóle jest dobre podejście? Przydałaby mi się taka ogólna funkcja, zamiast pisania 3-4 funkcji przeciążonych,

Pozdrawiam forumowiczów!

0

Pewnie Product to jakaś Twoja własna klasa, która nie dziedziczy po Object.List<KlasaPochodna> nie rzutuje się do List<KlasaBazowa> automatycznie, więc albo

public boolean compareSizes(List<?> list1, List<?> list2)

albo

public boolean compareSizes(List list1, List list2) {

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0