如何将整数的字符串表示形式转换为 Java 中的字符串?

How do I convert a string representation of an integer to a string in Java?

我正在使用 ContentResolver 查询从 Android 中的数据库获取一些数据。这不是问题。

方法returns整数的字符串表示,

INT TYPE_MAIN = 2

我想将其转换为字符串 Type_Main

String a = someMagicalMethod(TYPE_MAIN);
System.out.println(a);

这样输出就是

TYPE_MAIN

我不能使用 Integer.toString(TYPE_MAIN) 因为那会 return 它的值是 2

我怎样才能做到这一点?

在 Java 中,您无法使用变量名称检查变量的值,该信息在 运行 时不可用,即使通过反射也不可用。使用Map<String, Integer>来解决你的问题:

Map<String, Integer> map = new HashMap<>();
map.put("TYPE_MAIN", 2);
//...
String a = map.get("TYPE_MAIN").toString(); //someMagicalMethod(TYPE_MAIN);
System.out.println(a); //prints 2

让它成为一个枚举,然后你可以使用 String a = TYPE_MAIN.getName();