[英]Java variable value as new variable name
我想知道在Java中是否有任何方法可以给新变量命名,即另一个变量的值。 下面的代码是我要执行的操作的无效示例。
int a = 0;
while(true){
String (a) = "newValue";
a = a + 1;
}
要么
String b = "newVariableName";
int (b) = 1;
感谢您提供的任何帮助。
不行,这是不可能的。 可以创建一个新对象并将其添加到数组或某种列表中。 然后,您可以通过下标引用新对象。 因此,一个大概的例子可能是:
Object[] a = new Object[30];
for(int i = 0; i < 30; i++)
{
a[i] = new Object();
}
然后你可以使用
a[some number].someFunction();
如果考虑一下,编译器将如何在程序实际运行时间之外知道某个真实变量的值? 但是,您不太可能需要实际做您想做的事情。
您正在尝试制作数组,列表或字典。
你做不到 使用字典或地图来存储值。
不,在Java中无法做到这一点。 您最能做的是在运行时创建代码,并使用动态名称创建的字段加载新类。
您可能需要考虑一些更简单的东西,例如HashMap实例。
您不能在Java中创建动态变量名称。 我建议将这些变量放在以字符串为键的Map中。 密钥可以是您想要的任何String。
我认为反射不会有所帮助,因为无法创建Field的新实例。 所以像
Map<String,Field>
不会工作。 改用javascript :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.