java.lang.Number не реализует «+» или какие-либо другие операторы?

Я создаю класс, который, как предполагается, можно использовать с массивом любого типа чисел (float, int и т. д.), так что вот один метод У меня есть:

// T extends Number
public synchronized T[] average() {
    Number[] ret = new Number[queue[0].length];
    for (int i = 0; i < ret.length; ++i) {
        for (int j = 0; j < size; ++j) {
            ret[i] += queue[j][i]; // WTF ERROR?!
        }
        ret[i] /= size; // WTF ERROR?!
    }
    return (T[])ret;
}

За исключением того, что это не будет компилироваться, потому что "Number" не реализует операторы "+ =" или "/ =". Хуже того, класс Java Number не реализует даже самые простые операторы, такие как «+» или «-»! Как я могу создать метод, который возвращает среднее значение массива чисел, если java не позволяет мне его скомпилировать, потому что считает, что числа нельзя складывать?!?!

9
задан Dasmowenator 22 January 2012 в 00:31
поделиться