Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java-将变量列表转换为变量名到变量值的映射_Java_Reflection - Fatal编程技术网

Java-将变量列表转换为变量名到变量值的映射

Java-将变量列表转换为变量名到变量值的映射,java,reflection,Java,Reflection,假设我有几个变量: public void foo() { String name = "Bob"; String gender = "Male"; Integer age = 6; String address = "some address"; } 我怎样才能把它们变成一张地图呢 而不是手动将它们插入地图。这可以通过反射来完成吗?不,您必须手动将它们放入地图中。无法使用反射来查找局部变量的名称或值。否,您必须手动将它们放入映射中。不可能使用反射来查找局部变量

假设我有几个变量:

public void foo() {
    String name = "Bob";
    String gender = "Male";
    Integer age = 6;
    String address = "some address";
}
我怎样才能把它们变成一张地图呢


而不是手动将它们插入地图。这可以通过反射来完成吗?

不,您必须手动将它们放入地图中。无法使用反射来查找局部变量的名称或值。

否,您必须手动将它们放入映射中。不可能使用反射来查找局部变量的名称或值。

如果您的变量对于要转换为map的类是固定的,那么您可以将它们转换为json

您可以首先准备包含变量的对象,然后使用toJson方法将其转换为问题中指定的格式


这可能有助于使用google gson库中的toJson方法。

如果您的变量已固定,可以将类转换为map,则可以将它们转换为json

您可以首先准备包含变量的对象,然后使用toJson方法将其转换为问题中指定的格式

这可能有助于使用google gson库中的toJson方法。

不要重新发明轮子 使用Json库并解析对象

使用Gson的示例…: 您将得到一个类似json的

{
    "name": "Bob",
    "gender": "Male",
    "age": 6,
    "address": "some address", 
}
不要再发明轮子了 使用Json库并解析对象

使用Gson的示例…: 您将得到一个类似json的

{
    "name": "Bob",
    "gender": "Male",
    "age": 6,
    "address": "some address", 
}

如果您对字符串感兴趣,可以使用JSON_样式的方法。

如果您对字符串感兴趣,可以使用JSON_样式的方法。

您真正需要什么?这种格式的映射或字符串?你想写JSon?只是编辑了我的问题,它与JSon无关,我只需要一个映射:@WoLfPwNeR你不能这么做。姓名、性别等是局部变量,反射不能用于局部变量。如果它们是领域,那就不一样了。你真正需要什么?这种格式的映射或字符串?你想写JSon?只是编辑了我的问题,它与JSon无关,我只需要一个映射:@WoLfPwNeR你不能这么做。姓名、性别等是局部变量,反射不能用于局部变量。如果它们是田野,那就不同了。
{
    "name": "Bob",
    "gender": "Male",
    "age": 6,
    "address": "some address", 
}