所以我有一堂课
public class Box {
int index;
static int amount;
Box thisbox;
Cargo thiscargo;
Box(){
index = amount;
amount++;
}
}
在另一堂课中,我将定义框:
public class dostuff {
public static void main(String[] args) throws NoSuchMethodException {
Box box = new Box();
box.thisbox = new Box();
box.thisbox.thisbox = new Box();
box.thisbox.thisbox.thisbox = new Box();
box.thisbox.thisbox.thisbox.thisbox = new Box();
}
}
如您所知,box.thisbox.thisbox.thisbox.thisbox变得很烦人。我想知道是否可以让循环更轻松地访问box.thisbox.thisbox.thisbox而不必重复三遍.thisbox。在某些情况下,我必须在框内定义30个框,并且我不想复制和粘贴“ thisbox”的内容很多次。真的会喜欢一些帮助。谢谢!
编辑:我不能使用数组列表。不要问...
最佳答案
您可以编写某种深度的递归方法。
像这样
public Box getNthBox(Box box, int depth) {
If (depth == 0) {
return box;
}
return getNthBox(box.getBox(), depth - 1);
}
您需要一个getBox()方法,但该方法返回Box字段。
关于java - 有没有更简单的方法来定义对象内的对象?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58478461/