我试图管理列表的列表。我已经声明和初始化我的数据结构,像这样:嵌套列表结构管理
List<Vector<ArrayDeque<Vector_t>>> mData = new ArrayList<Vector<ArrayDeque<Vector_t>>>(
6);
for (int i = 0; i < 6; ++i) {
mData.add(i, new Vector<ArrayDeque<Vector_t>>());
// mData.get(i).setSize(200);
}
for (int i = 0; i < 6; i++) {
for (int k = 0; k < 200; k++) {
mData.get(i).add(new ArrayDeque<Vector_t>());
mData.get(i).get(k).add(new Vector_t());
}
}
其中Vector_t是:
class Vector_t {
float x;
float y;
float z;
}
这是初始化是否正确?在最后一个位置向数组deque添加值时,它会将整个arraydeque替换为最后一个元素,我不知道为什么。
此外,当我使用代码mdata.get(1).get(42)
更改值时,mdata.get(0).get(40)
上的元素也受到影响。再次,我不知道为什么?
我给硬编码值example..this是IM添加
if (mData.get(dir.value).get(slice).size() >= sMaxNum_c)
{
mData.get(dir.value).get(slice).removeFirst();
}
mData.get(dir.value).get(slice).addLast(result.acc);
提升价值,以一个方向的其他方向的值时,正在改变
... :(
请帮我的方式解决这个问题
对不起,在第一行类名是Vector_t ...键入错误...执行我的那个...! – user2159091 2013-03-12 02:43:40
你知道你可以编辑你的文章,对吧? – DaoWen 2013-03-12 02:47:54
为什么不介绍一些类来封装你正在做的而不是这个!? – 2013-03-12 02:51:30