Required type and Provided type are same but java provides an error

13 Views Asked by At
public static List<? extends Number> countSort(List<? extends Number> inputList, Number lenOfAdditionalArray){
        List<? extends Number> outputArray = new ArrayList<>();
        int[] additionalArray = new int[(int) lenOfAdditionalArray];
        for (int i = 0; i < (int)lenOfAdditionalArray; i++) {
            additionalArray[i] = 0;
        }
        for (Number number : inputList) {
            additionalArray[(Integer) number] += 1;
        }
        for (int i = 1; i < (int) lenOfAdditionalArray; i++) {
            additionalArray[i] = additionalArray[i] + additionalArray[i-1];
        }
        for (int i = 0; i < inputList.size(); i++) {
            outputArray.add(additionalArray[(Integer) inputList.get(i)],inputList.get(i));
            additionalArray[(Integer) inputList.get(i)] -= 1;
        }
        return outputArray;
    }

Task is to implement countingSort but with generic types and I got error of incompetible types (https://i.stack.imgur.com/HbArp.png)

0

There are 0 best solutions below