Java 初始化由用户指定类型的ArrayList

Java 初始化由用户指定类型的ArrayList,java,command-line,constructor,Java,Command Line,Constructor,我想初始化一个数组,其类型由用户通过命令行指定。也就是说,如果用户输入“int”,我将执行以下操作: ArrayList<Integer> res = new ArrayList<Integer>(); ArrayList<String> res = new ArrayList<String>(); ArrayList res=new ArrayList(); 类似地,如果用户输入“String”,我将执行以下操作: ArrayList<

我想初始化一个数组,其类型由用户通过命令行指定。也就是说,如果用户输入“int”,我将执行以下操作:

ArrayList<Integer> res = new ArrayList<Integer>();
ArrayList<String> res = new ArrayList<String>();
ArrayList res=new ArrayList();
类似地,如果用户输入“String”,我将执行以下操作:

ArrayList<Integer> res = new ArrayList<Integer>();
ArrayList<String> res = new ArrayList<String>();
ArrayList res=new ArrayList();

当然,我可以通过一堆if-else语句来实现这一点,但是,我想知道是否有一种聪明的方法来实现这一点。假设用户输入的类型始终是基元类型,即int、string、boolean等。

泛型数组的实际类型,即<和>之间的类型,仅在编译时存在,即

这意味着只有
ArrayList
在运行时才真正存在。。。因此,你所问的并没有真正意义


到目前为止,您的问题中没有足够的信息来帮助您进一步……

您打算如何使用
res
?(在伪代码中)它只是数组的一个随机名称。我将用一堆随机元素填充。我问你打算如何处理生成的arraylist。我发现了2篇文章,可能会引起兴趣-和。他们都讨论了如何动态地将一个基本类型转换为它对应的类对象。可能有一种简单的方法来完成你想做的事情,但它可能不涉及泛型。如果没有更详细的描述,你真的很难说你希望程序对列表做什么。如果问题中没有足够的信息给出正确的答案,这不应该是一个评论吗?