如何动态创建嵌套结构?

时间:2020-03-05 17:08:45

标签: java reflection nested

How to get all types of the inner structures of a nested type?开始,我知道如何获取嵌套数据类型的内部结构。但是,如何动态地更新这种类型?

也就是说,我可以使用静态代码创建嵌套数据类型,例如

LinkedList<LinkedList<LinkedList<Object>>> obj=new LinkedList<>();

但是,如果结构内部的各层是可变的,那么如何使用程序来实现呢? 任何想法都表示赞赏。

编辑: 例如,

public void foo(LinkedList<LinkedList<LinkedList<Object>>> inputParameter);  
//this line has to be changed because the number of inner LinkedList is variable.
LinkedList<LinkedList<LinkedList<Object>>> list=new LinkedList<>();
//call    
foo(list);

1 个答案:

答案 0 :(得分:1)

如果我正确理解了您的问题,那么您会想要以下内容:

int n = 10;
LinkedList<linked list nested n times, aka 10 times> = new LinkedList<>();
n++;
LinkedList<linked list nested n times, aka 11 times> = new LinkedList<>();

请不要这样做。 我可以想象的唯一用例是存储张量/ ndarray,在这种情况下,有许多库可供使用,而链表可能不是此处数据结构的最佳选择。

要初始化一个空的LinkedList,请使用new LinkedList<>();,这将创建一个空的链表。 LinkedList对运行时包含的元素种类一无所知。实际上,在某些较旧的jdks类中没有此类类型参数。