java object转map
时间: 2023-09-15 18:18:52 浏览: 118
ObjectToMapUtil.java(Object对象转Map)
5星 · 资源好评率100%
在Java中,将对象转换为Map可以使用反射机制来实现。下面是一个示例代码:
```java
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Map;
public class ObjectToMapConverter {
public static Map<String, Object> convert(Object obj) {
Map<String, Object> map = new HashMap<>();
Class<?> clazz = obj.getClass();
Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) {
field.setAccessible(true);
String fieldName = field.getName();
Object fieldValue;
try {
fieldValue = field.get(obj);
} catch (IllegalAccessException e) {
fieldValue = null;
}
map.put(fieldName, fieldValue);
}
return map;
}
}
```
使用时,可以调用`convert`方法将对象转换为Map。例如:
```java
public class Main {
public static void main(String[] args) {
Person person = new Person("John Doe", 30);
Map<String, Object> map = ObjectToMapConverter.convert(person);
System.out.println(map);
}
}
class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
// getters and setters
}
```
输出结果将是`{name=John Doe, age=30}`,其中对象的属性名作为Map的键,属性值作为Map的值。请注意,此示例仅处理了对象的非静态字段。
阅读全文