如果您有一个名为xyz的Java变量。 然后我会定义一个字符串,其中包含我想要使用的命名变量的值。
String x="xyz";
如何让Java将String x识别为变量xyz的指针?
一个任意的例子:
JButton a= new JButton();
稍后......
String x="a";
我现在要说像
这样的话JButton called string x.setPreferredSize(new Dimension(40,30));
答案 0 :(得分:5)
通常,如果要以这种方式访问变量,则必须使用反射,这种反射速度较慢且可能存在危险。
但是,由于您有一个非常具体的场景,我会采取不同的方法。为什么不把你的按钮或其他元素放到地图中,键是字符串:
Map<String, JComponent> currentComponents = new HashMap<String, JComponent>();
currentComponents.put("a", new JButton());
String x = "a";
currentComponents.get(x).setPreferredSize(new Dimension(40,30));
答案 1 :(得分:4)
简短的回答是你不能做这样的事情。这不是Java语言的工作方式。答案很长,您可以使用Reflection API来模拟某些内容。
答案 2 :(得分:0)
Java变量名为xyz
不,它名为x
。它的值是“xyz
”。
String x="a";
现在,您要将值“a
”分配给名为x
的字符串。它与JButton
没有任何关联,即使其名称为a
。