我的需求是想一次性传递多个list。
现在在测试可以如何实现。查看test4:list<list<String>>的初始化
在我不同测试和思路中,对list传递有几个不同的猜测和实验。
test1:测试两个list的话,一个list存数据,那么另一个list是否可以存第一个list的首地址。
首先这个问题是可以实现的。
List<String> tep = new ArrayList<String>();
List<String> ls = new ArrayList<String>();
tep.add("A");
tep.add("B");
tep.add("C");
ls.add(tep.get(0));
System.out.println(ls.get(0));
这么是可以访问到数据A的。
test2:但是我的问题是,我想用一个链表ls,他其中存的都是其他链表的首地址,这样我就可以通过传递ls那个List去传递所有的链表了。当然,测试后发现并不可以,其实问题出在了s.get(index_1).get(index_2);是不可以的。就是我是能访问tep的第一个数据A,但是我不能连着两个get得到B和C;如果我用String也仍然是不可以的。
test3:如果我们这么声明List<List<String>>的话,可以吗?怎么定义,怎么初始化啊?
定义:如下的两种定义方式都是不会报错的。
如何初始化和使用呢?
一层一层赋值就可以了,因此也实现了多个list的传值。
输出结果:
test4: 测试两个list放进入是否成立。因此多个list的传递是可以放在一个List中,然后传递List<List<String>>过去的。
输出结果:
接受该参数的函数,只需要用同样的变量接受。那他怎么使用内层的List呢?因此无论基层都是可以使用的。