如何获取变量名称? - java

时间:2014-07-12 06:56:08

标签: java

可以获取变量名吗?

例如:

String nameOfCar = "audi";

现在打印结果:

System.out.println(nameOfCar.getVname???or something similar);

屏幕:

nameOfCar

2 个答案:

答案 0 :(得分:7)

您可以通过反射获取所有字段名称

Class yourClass = YourClass.class
Field[] fields = yourClass.getFields();
for(Field f: fields){
    f.getName();
}

或者如果你想要映射,那就去Map

Map<String, String> propertyToValueMap

如果你正在尝试读取方法的局部变量名,那么获取一个你做错了的信号也不是那么简单

答案 1 :(得分:2)

你可以通过反思来做到这一点

Class  myClass = MyClass.class
Field field = myClass.getField("nameOfCar ");
System.out.println(field .getName());

要获取所有字段而不使用您可以执行的名称

Field[] myFields = myClass .getFields();