Java中ArrayList中的ArrayList中的ArrayList
实现可以在ArrayList和整数中存储任意级别ArrayList的ArrayList的最佳方法是什么Java中ArrayList中的ArrayList中的ArrayList,java,generics,collections,Java,Generics,Collections,实现可以在ArrayList和整数中存储任意级别ArrayList的ArrayList的最佳方法是什么 List<List<Integer>> list = ArrayList<List>(); List List=ArrayList(); 列表中最多只允许两级列表,不允许混合使用整数和数组列表 这是Python中的一些简单内容。这是一个愚蠢的数据结构,但不幸的是,编码测试需要这些东西 实现可以存储任何数据的ArrayList的最佳方法是什么 ArrayL
List<List<Integer>> list = ArrayList<List>();
List List=ArrayList();
列表中最多只允许两级列表,不允许混合使用整数和数组列表
这是Python中的一些简单内容。这是一个愚蠢的数据结构,但不幸的是,编码测试需要这些东西 实现可以存储任何数据的ArrayList的最佳方法是什么 ArrayList和整数中ArrayList的级别 由于
泛型是编译时属性,所以您只有列表
。因此,您不能根据运行时数据动态更改/决定类型
因此,我认为最好的也是唯一的选择是列表
。但是,您可能需要多次强制转换才能使用该列表。以比列表
更安全的方式执行此操作的唯一方法是定义联合类型:
class IntegerOrList {
final Integer i;
final List<IntegerOrList> list;
// Constructors to ensure that only one of i and list is present.
IntegerOrList (Integer i) {
this.i = i; this.list = null;
}
IntegerOrList (List<IntegerOrList> list) {
this.i = null; this.list = list;
}
// Getters.
}
类整数列表{
最后一个整数i;
最后名单;
//构造器确保只有一个i和list存在。
整数列表(整数i){
this.i=i;this.list=null;
}
整数列表(列表){
this.i=null;this.list=list;
}
//吸气剂。
}
如果您试图访问不存在的文件,则应抛出或以其他方式处理该文件
然后创建以下内容的列表:
List<IntegerOrList> list = new ArrayList<>();
List List=new ArrayList();
trued:List List(或类似的东西?整数是一个对象,数组列表也是“这是Python中的一些简单的东西”除此之外,您不知道任何给定元素的类型。在Java中,使用列表
很容易造成相同程度的混淆。可能List@Ferrybig不可以,因为这样您就不能在其中放入除文本null以外的任何内容。(这与List
的内容相同)一吨重的铸件才能通过外观达到结构的任何特定水平。可能需要重新考虑这一点。