Что не так, кто понимает? UPD: Исправил processCastedObjects, но всё ещё не принимает.
private static void processCastedObjects(List<Number> list){
    for (Number object : list) {
        if (object instanceof Float) {
            Float a = (Float) object;
            System.out.println("Is float value defined? " + !(a.isInfinite()));
        } else if (object instanceof Double) {
            Double a = (Double) object;
            System.out.println("Is double value infinite? " + a.isNaN());
        }
    }
}