【发布时间】:2017-04-08 05:43:03
【问题描述】:
我正在寻找创建一个arraylist 的arraylist。
import java.util.ArrayList;
import java.util.List;
class Neighbors{
ArrayList<Integer> inner = new ArrayList();
Neighbors(){}
}
ArrayList<Neighbors> outer = new ArrayList<Neighbors>();
void setup() {
size(1280, 700, JAVA2D);
background(0);
Neighbors test1 = new Neighbors();
Neighbors test2 = new Neighbors();
test1.inner.add(0);
test1.inner.add(1);
test1.inner.add(2);
test2.inner.add(5);
test2.inner.add(6);
test2.inner.add(7);
println(test1.inner);
println(test2.inner);
// outer.add((ArrayList)test.inner);
outer.add(test1.inner);
outer.add(test2.inner);
println(outer);
}
这是我上面的代码,但我无法将内部数组列表添加到外部数组。我不确定我在做什么是正确的。或者,如果有任何其他方法可以以正确的方式执行此操作,请提供帮助。
首先,我试图创建一个数组列表作为类下的对象,我想在外数组列表中使用这些内部数组列表。基本上我需要一个二维数组列表在类的帮助下。请建议或帮助我提供一个示例代码,我可以在其中使用 arraylist 中的 arraylist,向其中添加项目以及访问它们的方式。
【问题讨论】:
-
你想如何一起使用这些数组列表?它们拥有不同的类型(
IntegervsNeighbor),所以你不能只是混合它们。此外,如果您只是从该类外部访问某些类的成员变量,则它被认为是不良封装。你真正想做什么? -
如果你想要一个二维的
ArrayList,你试过ArrayList<ArrayList<some_reference_type>>吗?你想完成什么? -
我想将这些数组列表用作具有动态内存的二维网格或矩阵。每个都将保存整数,例如: 0(row) - 5 , 6 , 8, 10 1(row) - 21, 4 , 5 2(row) - 1, 4 ,5 , 5,11,12,16,.. .....
-
@LoganKulinski - 是的,我确实尝试过,效果很好。有什么方法可以通过类和对象来完成。我真的不知道如何用一个类来实现它。我愿意接受建议。请指导
-
您当然可以将
ArrayList设为一个字段。但是,如果您只想使用整数,为什么要使用类?
标签: java class arraylist dynamic processing