Вызывающий конструктор Java Reflection с примитивными типами

У меня есть метод в моей тестовой среде, который создает экземпляр класса, в зависимости от параметров, передаваемых в:

public void test(Object... constructorArgs) throws Exception {
    Constructor<T> con;
    if (constructorArgs.length > 0) {
        Class<?>[] parameterTypes = new Class<?>[constructorArgs.length];
        for (int i = 0; i < constructorArgs.length; i++) {
            parameterTypes[i] = constructorArgs[i].getClass();  
        }
        con = clazz.getConstructor(parameterTypes);
    } else {
        con = clazz.getConstructor();
    }
}

Проблема в том, что это не работает, если конструктор имеет примитивные типы, как показано ниже:

public Range(String name, int lowerBound, int upperBound) { ... }

.test("a", 1, 3);

Результаты в:

java.lang.NoSuchMethodException: Range.<init>(java.lang.String, java.lang.Integer, java.lang.Integer)

Примитивные целые автоматически добавляются в версии объектов, но как мне вернуть их для вызова конструктора?

Ответы на вопрос(6)

Ваш ответ на вопрос