Java 按名称获取变量

Java 按名称获取变量,java,Java,如何通过提供包含变量名称的字符串来访问变量值? 像这样: int var1 = 123; getVariableByName("var1"); 它应该返回123 我知道我可以创建HashMap或其他东西… 但是我能在没有代码的情况下很快做到这一点吗 我需要创建一些具有类似数据的对象,所以我这样做了: (我正在使用android) string2=“bla”; string2=“bla-bla”; String string3=“bla bla bla” 对于(int i=1;i,在Java中不

如何通过提供包含变量名称的字符串来访问变量值? 像这样:

int var1 = 123;
getVariableByName("var1");
它应该返回123
我知道我可以创建HashMap或其他东西…
但是我能在没有代码的情况下很快做到这一点吗

我需要创建一些具有类似数据的对象,所以我这样做了:
(我正在使用android)

string2=“bla”;
string2=“bla-bla”;
String string3=“bla bla bla”

对于(int i=1;i,在Java中不能使用局部变量。局部变量是在方法中定义的变量。这些名称在编译步骤中无法保存,并且在运行时不可用


您可以通过Foo.class.getField或obj.getClass()通过反射查找字段.getField

你能给我们提供更多的上下文来解释为什么你认为你需要这样做吗?…可能需要更多的代码。需要更多的上下文。那是类->反射中的一个字段吗?那是方法->中的一个局部变量吗?不可能。在这两种情况下,你都不应该这样做并保持类型安全。我想他需要一个可以接受动态变量的方法ble,然后它检索它的值得到值后,你想对该值做什么?谢谢,我对java还是新手,没有想过使用数组。但是你帮了我很多忙!:)
String string2="bla";
String string2="bla-bla";
String string3="bla-bla-bla"

for(int i=1; i<=2; i++){
   TextView tv = new TextView;
   TextView.setText(getValueOf("string"+i));
}