Работает корректно или я плохо тестировал. Подскажите пожалуйста чего я не вижу. Проверка на Integer сделана, во всех других случаях вызывается метод с типом передаваемого значения String.