比如:
int q = 12;
String s = "q";
System.out.println(Integer.parseInt(s)); //这里是想要输出q的值12
java中数字对应的变量名如何转化为相对应的数值。 谢谢各位了哈。
答案:6 悬赏:40
解决时间 2021-02-16 12:25
- 提问者网友:芷芹
- 2021-02-15 21:21
最佳答案
- 二级知识专家网友:懂得ㄋ、沉默
- 2021-02-15 22:02
不知道楼主具体是要怎么做,如果你是想直接输出q的值 你可以System.out.println(q);就可以了。
如果你想输出 通过“一个字符串”表示的变量符号的值的话,就要用到一些java的高级特性了。反射机制。
如果你要学习反射机制的话 ,你要着重看看 java.lang 包里的Class类和java.lang.reflect包中的类。 但是这也有一个限制 只能反射类的全局变量,在类的方法中的变量是反射不出来的。
Field fq = (Class)this.getDeclaredField(s); //通过反射找到这个类的q表示的字段。(s 就是上面的字符串)
System.out.println(fq.getInt((Object)fq));//这里通过这个字段获得这个字段的Int值。
如果你想输出 通过“一个字符串”表示的变量符号的值的话,就要用到一些java的高级特性了。反射机制。
如果你要学习反射机制的话 ,你要着重看看 java.lang 包里的Class类和java.lang.reflect包中的类。 但是这也有一个限制 只能反射类的全局变量,在类的方法中的变量是反射不出来的。
Field fq = (Class)this.getDeclaredField(s); //通过反射找到这个类的q表示的字段。(s 就是上面的字符串)
System.out.println(fq.getInt((Object)fq));//这里通过这个字段获得这个字段的Int值。
全部回答
- 1楼网友:晨与橙与城
- 2021-02-16 02:13
直接q.toString();
- 2楼网友:为你轻狂半世殇
- 2021-02-16 02:04
你的写错了,加了双引号的q表示是个字符,而不是变量了。你把双引号去掉看看。
- 3楼网友:为你轻狂半世殇
- 2021-02-16 00:54
你好!
面对需求,要学会用程序员的思维看待问题。。。
如有疑问,请追问。
- 4楼网友:晨与橙与城
- 2021-02-15 23:51
用HashMap呗,map.put(“q”,12)。取的时候System.out.println(map.get(“q”));
- 5楼网友:你把微笑给了谁
- 2021-02-15 23:08
String s = ""+q;自动转的
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |