是否可以通过循环连续创建变量?

时间:2013-12-28 19:43:04

标签: java variables loops for-loop

例如,如果我要创建一个int a,那么循环将创建一个int b,依此类推,直到它被停止。

感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

是的,在某种程度上。您可以在循环中创建多个对象,但不能创建实际变量。如果变量已经存在,那么你可以通过反射来处理它,但我永远不会建议。

我会先提出你的问题:你不能动态决定你给这些变量的名字。

您应该做的是创建一个集合并将所有变量存储在那里。

如果您确实要将名称链接到某个值,则可以使用Map<String, Object>而不是使用动态变量名称,否则数组或ArrayList就足够了。

答案 1 :(得分:0)

即使您可以动态命名变量,如果语言确实阻止了作用域(如最常见的那样),那么该特定变量仅在该循环迭代的持续时间内存在。由于它不会存在于下一个循环迭代中,因此您也可以在每次迭代时使用相同的名称。

正如其他人所说,如果您尝试在每次迭代中存储新值,则应使用数组或列表。

答案 2 :(得分:0)

您想要创建一种变量列表......例如,您可以使用ArrayList来执行此操作。在每次迭代中,您都可以在列表中添加新元素:

 ArrayList<Integer> results = new ArrayList<Integer>();
 for(int i = 0; i < 10; i++) {
      // your loop, here I just stored the iteration index multiplied by 2
      results.add(i*2);
 }

或者,如果要为每个结果指定“名称”,则可以创建HashMap。全球性的想法是创建一个集合并将每个结果附加到其中。通过迭代创建的集合,可以访问它。

相关问题