13
您认为可以创建类似于此的东西吗?作为Java参数中的参数的泛型类型
private ArrayList increaseSizeArray(ArrayList array_test, GenericClass) {
array_test.add(new GenericObject()); // instance of GenericClass
return array_test;
}
您认为可以创建类似于此的东西吗?作为Java参数中的参数的泛型类型
private ArrayList increaseSizeArray(ArrayList array_test, GenericClass) {
array_test.add(new GenericObject()); // instance of GenericClass
return array_test;
}
是的,你可以。
private static <T> List<T> pushBack(List<T> list, Class<T> typeKey) throws Exception {
list.add(typeKey.getConstructor().newInstance());
return list;
}
用例:
List<String> strings = new ArrayList<String>();
pushBack(strings, String.class);
简单的解决方案!
private <GenericType> ArrayList increaseSizeArray(ArrayList array_test, GenericType genericObject)
{
array_test.add(new genericObject());
return ArrayList;
}
你如何调用该方法?我不知道typekey应该是什么类。我找不到任何关于它的事情。如果你有任何阅读建议,这将是受欢迎的。感谢您的答复! –
@Pierre:刚刚添加了一个使用示例。基本上,如果你取得一个类名(在这种情况下是'String')并在其后面添加'.class',那么你就有一个该类的类型键(类对象)。 'String.class'类型为'Class'。 –
我只是用它这样的:static List pushBack(List list,Class typeKey,int size)它的工作。谢谢你,你帮了我很多。避免复制/粘贴代码总是一种快乐。 –