Java。一个字符串变量,其值不知道,怎样得到一个跟字符串长得一样的变量名?
Java。一个字符串变量,其值不知道,怎样得到一个跟字符串长得一样的变量名?(比如字符串是abc,得到的结果是一个变量名为abc的变量)。把这个变量叫做这个字符串对应的变...
Java。一个字符串变量,其值不知道,怎样得到一个跟字符串长得一样的变量名?(比如字符串是abc,得到的结果是一个变量名为abc的变量)。把这个变量叫做这个字符串对应的变量。
比如说,我有一个字符串变量,其值不知道(实际上为a2,或者为a3……),名字a2、a3……的int变量是存在的。现在我要对这个字符串对应的变量赋值1,怎么办 展开
比如说,我有一个字符串变量,其值不知道(实际上为a2,或者为a3……),名字a2、a3……的int变量是存在的。现在我要对这个字符串对应的变量赋值1,怎么办 展开
5个回答
展开全部
基本类型的用java无法实现,只能用C/C++,改用包装类型的还可以。思路:
用一个map<String,Integer>类型的变量保存变量名和变量的对应关系,然后根据字符串内容从这个map中找到对应的变量进行赋值就可以了。
用一个map<String,Integer>类型的变量保存变量名和变量的对应关系,然后根据字符串内容从这个map中找到对应的变量进行赋值就可以了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
import java.lang.reflect.Field;
public class T {
public int a2;
public int a3;
public static void main(String[] args) throws Exception {
String varName = "a2";
Class clz = T.class;
Object obj = clz.newInstance();
obj = new T();
Field var = clz.getField(varName);
var.set(obj, 1);
System.out.println(var.get(obj));
}
}
public class T {
public int a2;
public int a3;
public static void main(String[] args) throws Exception {
String varName = "a2";
Class clz = T.class;
Object obj = clz.newInstance();
obj = new T();
Field var = clz.getField(varName);
var.set(obj, 1);
System.out.println(var.get(obj));
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
据我所知~是不行的~
如果不是你写的程序 你想知道其中的变量名称的话方法只有一个 就是反编译.class文件 编译成.java的文件 然后自己去里边找
如果不是你写的程序 你想知道其中的变量名称的话方法只有一个 就是反编译.class文件 编译成.java的文件 然后自己去里边找
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把这些需要定位(指向)的变量注册在一个map中,通过get去获取:
Map varMap = new HashMap<String, Object>();
String var1 = "test1";
varMap.put("var1", var1);
...
String abc = "var1";
String abcVar = (String)varMap.get(abc);
...
Map varMap = new HashMap<String, Object>();
String var1 = "test1";
varMap.put("var1", var1);
...
String abc = "var1";
String abcVar = (String)varMap.get(abc);
...
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
办不到。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询