java - 根据另一个变量的内容设置变量

标签 java reflection

这很难解释,所以这里有代码:

int theVariable;
setVariable(theVariable, 10);

void setVariable(variableName, variableContents){
  variableName.setValue(variableContents);
}

我正在创建一个设置库,当我调用 addTextField() 时,我希望能够传递一个变量名称,这样当您更改文本字段时,该变量就会自动设置。我正在考虑反射(reflection),但我不确定这是否是正确的方法。

最佳答案

您可以使用字符串变量名称与其值的映射:

Map<String, Integer> variableMap = new HashMap<>();

void setVariable(String variableName, int variableContents){
  variableMap.put(variableName, variableContents);
}

public Integer getVariable(String variableName){
   return variableMap.get(variableName);
}

显然,您可以通过泛型和错误检查对此进行扩展,但这是基本方法。

关于java - 根据另一个变量的内容设置变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28302322/

相关文章:

java - 如何使用 Java 从字符串变量中的 Json 中获取值

java - 使用Java的RMI的优点

java - 使用 Java 调试 Mule 子流

c# - 可选参数无法正常工作

加载 DLL 期间出现 C# 异常。找不到解决方法

java - 线程安全地从一个列表中删除/添加元素到另一个列表

java - NullPointerException : Getting data from Database ((java. lang.String)' 在空对象引用上)

java - 在 Java 中创建字段数组

.net - 如何在不引用 CaSTLe DynamicProxy 的情况下检测 Type 是否是生成的 DynamicProxy?

java - 如何在 JLabel 中显示 JTextField 的输入?如何修复反射错误?