【发布时间】:2023-03-30 23:22:01
【问题描述】:
以下代码运行良好。
private int[] list = new int[]{ 3, 5, 10};
private int[] temp = new int[list.length];
public void Generate()
{
for (int a=0;a<list[0];a++)
{
temp[0] = a;
for (int b=0;b<list[1];b++)
{
temp[1] = b;
for (int c=0;c<list[2];c++)
{
temp[2] = c;
int[] asd = temp;
}
}
}
}
但如果我更改列表数组长度,我必须在里面添加一个 for 循环。如何为任何大小的列表数组编写一种方法?例如:
private int[] list = new int[]{ 2, 5, 12,18};
代码不起作用!
【问题讨论】:
-
这是什么语言?爪哇? C#?
-
这是java代码
-
我建议使用递归来“生成”你的 for 循环。 IE。 for 循环位于一个辅助递归函数中,该函数在增加索引值时调用自身。然后,当您遇到基本情况时,您只需分配/打印/返回/变异/&c 结果并弹出。一起使用递归和迭代可能是最容易实现的,而不是将所有内容都转换为单独的迭代函数(尽管任何递归函数都可以重新实现为迭代函数......)。
-
我对此进行了研究。你能写一个例子吗?
标签: java for-loop foreach while-loop