在变量中使用变量?

Joe*_*Joe 3 java variables loops

我有几个字段,每个字段都是这样的:

field1
field2
field3
...
Run Code Online (Sandbox Code Playgroud)

使用带计数器的循环,我希望能够说出fieldx.其中x是该循环中计数器的值.这意味着如果我的数组中有6个条目,则field1 - field6将被赋予值.

fieldx可能吗?

Mar*_*ers 11

你可以用反射来做,但一般来说,如果你可以在数组中声明你的字段会更好.代替:

SomeType field1;
SomeType field2;
SomeType field3;
...
SomeType field6;
Run Code Online (Sandbox Code Playgroud)

你可以这样做:

SomeType[] fields = new SomeType[6];
Run Code Online (Sandbox Code Playgroud)

然后你可以遍历设置值的数组:

for (int i = 0; i < fields.length; ++i)
{
    fields[i] = yourValues[i];
}
Run Code Online (Sandbox Code Playgroud)