java - 在Java中动态分配另一个变量的变量值

标签 java

假设我有以下内容:

public class Something{

    private final String VALUE_AAA = "ABC";
    private final String VALUE_BBB = "DEF";
    private final String VALUE_CCC = "GHI";

    public String getValue(String param) {

    }
}

现在我想如果我将值 BBB 传递给 getValue 作为返回 DEF

这可能吗?我不想要 if - else 语句。我想过 BeanUtils,但我不确定。

谢谢, 豪克

最佳答案

也许你可以使用 HashMap,

public class Something{

    protected final HashMap<Integer, String>() hashMap = new HashMap<Integer, String>(){{
        put(new Integer(1),"ABC");
        put(new Integer(2),"DEF");
        put(new Integer(3),"GHI");
    }}

    public String getValue(Integer nr) {
        return hashMap.get(nr);
    }
}

编辑

似乎这些值集是在类本身中预先初始化的,对于作为输入的字符串参数,您可以使用:

public class Something{

protected final HashMap<String, String> hashMap = new HashMap<String, String>(){{
    put("AAA","ABC");
    put("BBB","DEF");
    put("CCC","GHI");
}};

public String getValue(String nr) {
    return hashMap.get(nr);
}

我跳过了“Value_”,因为如果您决定使用 HashMap,则不需要这样的变量名,只需要键。

关于java - 在Java中动态分配另一个变量的变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7212994/

相关文章:

java - 如何在启动 MainActivity 时直接选择 fragment 类?

java - 停止询问用户输入的循环

java - 检查 Firebase 数据库中是否存在数据

具有不可序列化部分的 Java 序列化

java - Android 中未知的 NullPointerException

Java格式化数组(使用Formatter类)

java - Java中的UnknownHostException

java - 如何从 Listview 接收值并将其保存到 sharedpreferences

我想在 HTML 中运行 Java 程序

java - 无法安装 JDK - 配置文件格式错误