我有 map
public static final String key1 = "newKey";
public static final String key2 = "key2";
public static final String key3 = "key3";
public static final String key4 = "key4";
public static Map<String, String> objects = new TreeMap<String, String>();
TreeMap.put(key1,"Bob1")
TreeMap.put(key2,"Bob2")
TreeMap.put(key3,"Bob3")
TreeMap.put(key4,"Bob4")
第一个参数是键。 我想检查 key 是否存在。所以我写了这段代码
public String checkKey(String keyToCheck) {
if (objects.containsKey(keyToCheck)) {
.......
}
}
问题是用户可以通过以下两种方式调用checkKey
:
checkKey("新 key ")
checkKey("className.key1")
这些字符串中的任何一个都来自用户输入。在第一种情况下,我没有任何问题,因为它在 map 中。但是在第二种情况下,我需要对其进行转换,以便获得相应的newkey
值。
最佳答案
假设你有这个:
public class MyClass {
public static final String key1 = "newKey";
}
你应该这样检查它:
checkKey(MyClass.key1);
不
checkKey("MyClass.key1");
编辑:显然,我的回答是错误的。我编辑了他的问题以使其更清楚。
关于java - 如何找到常量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14208927/