如果我有
int i =5;
如何创建一个新变量,该变量的前一个整数值将构成它的名称?
示例:
String string**i**;
so that, in the ent, my String variable will be named
string**5**
答案 0 :(得分:2)
你没有。您使用数组:
String[] strings = new string[10];
strings[5] = "foo";
答案 1 :(得分:0)
简单的答案是你不能/不应该尝试在Java中使用那种东西。必须在编译时知道Java变量名。周期。
在这种特殊情况下,无论如何它似乎都是毫无意义的运动。考虑一下:
String buildstring_<buildNumber> = ...
您打算如何使用这个假设变量?
if (buildstring_<buildNumber>.equals(...)) {
....
}
但你可以做到这样的事情:
String buildstring_current = ...
if (buildstring_current.equals(...)) {
....
}
好的,假设有很多这些构建字符串......
String buildstring_1 = ...
String buildstring_2 = ...
String buildstring_3 = ...
if (buildstring_<buildNumber>.equals(...)) {
....
}
很好......但是当<buildNumber>
比上一个buildstring_?
声明更大时会发生什么?编译错误或运行时错误!!!
没有。在Java中执行此操作的明智方法是使用数组或Map
...或可能从属性文件中读取的内容。