2011-04-05 174 views
1

对不起,我对Java真的很陌生,我正在开发朋友项目。我似乎正在努力与这一个。我正在尝试使用一个非常简单的for-loop来遍历从另一个类获得的多个变量。在Java中使用Var for For循环

for (int i = 0; i < 8; i = i + 1) { // Test and Loop 
    myarr.add(anotherclass.SVAR+i); 
} 

我不知道他们为什么最初没有放入数组(可能是因为它更容易以字符串的形式访问它们)。无论如何,它们被设置为SVAR0,SVAR1直到SVAR7。我怎样才能做到这一点?当我有我的SVAR + i时,它说SVAR没有被定义,这是有道理的,因为它不是。

谢谢你提前!

回答

4

你不能动态地构建一个像这样的变量/字段等的引用。编译器需要一个明确的引用。

但是,您可能希望使用reflection来派生名称,然后反思您的对象以找到该字段并检索该值。 Here'是一个简单的例子来说明你如何做到这一点。

但是我认为一个更好的对象/场结构可以是更合适的(取决于你的使用情况等)

+0

Re。最后一段:I.e.数组。 – delnan 2011-04-05 17:20:18

1

以与阵列替换的变量,或展开循环。你想要什么是可能的,但只有通过虚拟自我反省才能付出巨大的代价。