例如,我有以下变量: Var1、Var2、Var3、Var4、Var5——共 5 个变量。 所有数据都具有唯一性,我想使用 for 循环遍历它们。
//String Var1 = something, Var2 = something etc..
for (int i = 1; i <= 5; i++)
{
Var(i) = "something else";
}
//i.e I change Var(1), Var(2) etc.. to something else respectively.
为了进一步说明,最终我想应用此方法来遍历我程序中的多个组件。我有大量具有样式名称的组件(例如 label1、label2、label3 等),我想更改这些组件的值而不必单独设置它们的值。
最佳答案
如果变量被定义为一个类的成员,你可以用反射来做到这一点。对于方法参数或局部变量,这是不可能的。类似这样的东西:
Class currentClass = getClass();
Field[] fields = currentClass.getFields();
for (Field f : fields) {
System.out.println(f.getName());
}
如果您打算更改值,它会变得有点复杂,因为您还必须考虑变量的类型。例如。您可以将 String
分配给 Object
类型的变量,但反之则不行。
关于java - 有没有办法遍历变量名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33185607/