我想编写一个方法,该方法将返回任何类型的 java.util.List
而无需进行任何类型转换:
List<User> users = magicalListGetter(User.class);
List<Vehicle> vehicles = magicalListGetter(Vehicle.class);
List<String> strings = magicalListGetter(String.class);
方法签名会是什么样子?像这样的东西,也许(?):
public List<<?> ?> magicalListGetter(Class<?> clazz) {
List<?> list = doMagicalVooDooHere();
return list;
}
原文由 user1768830 发布,翻译遵循 CC BY-SA 4.0 许可协议
也可以为方法提供泛型类型参数。您已经正确推断出需要正确的类实例来创建事物(
klazz.getConstructor().newInstance()
)。